【发布时间】:2016-04-16 12:11:14
【问题描述】:
我在 Windows 窗体应用程序中使用 vb.net 序列化一个类 (PSD):
Dim objStreamWriter As New System.IO.StreamWriter("e:\test.xml")
Dim x As New System.Xml.Serialization.XmlSerializer(PSD.GetType)
x.Serialize(objStreamWriter, PSD)
objStreamWriter.Close()
我需要在 Windows 通用应用程序中反序列化该类。 到目前为止,这是我的代码:
Dim picker As Windows.Storage.Pickers.FileOpenPicker = New Windows.Storage.Pickers.FileOpenPicker
picker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail
picker.FileTypeFilter.Add(".xml")
Dim File As Windows.Storage.StorageFile = Await picker.PickSingleFileAsync
Dim Fl = Await File.OpenAsync(Windows.Storage.FileAccessMode.Read)
Dim inStream As Stream = Fl.AsStreamForRead()
Dim PSD As New PlatinaStammdaten
Dim serializer = New XmlSerializer(GetType(List(Of PlatinaStammdaten)), New Type() {GetType(PlatinaStammdaten)})
PSD = serializer.Deserialize(inStream)
我得到的是错误“XML 文档 (2, 2) 中存在错误。”
这是生成的 XML 文件的开头:
<?xml version="1.0" encoding="utf-8"?>
<Stammdaten xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Lose>
<Los>
<Name>Sonstige</Name>
<KZ>000</KZ>
</Los>
<Los>
<Name>LOS 1; Allgemein / Planung</Name>
<KZ>110</KZ>
</Los>
...
我的代码中有什么错误(写入或读取)导致该错误?
【问题讨论】:
-
要查找 xml 错误,请使用以下菜单:项目:添加新项目:XML 文件。然后将xml文件粘贴到窗口中。错误将像错误列表窗口中的任何编译器错误一样显示。
标签: xml vb.net win-universal-app xmlserializer