大家好,我有从文件生成的以下XML字符串。我想反序列化它。
<CustomerName>TEST</CustomerName>
<PONumber></PONumber>
<ProcessedBy>Jerry Cooke</ProcessedBy>
<ProcessDate>03-05-2004 14:00:49</ProcessDate>
<TagNumber></TagNumber>
<SerialNumber>134</SerialNumber>
我正在使用以下代码。
string Data = upperxmlstring
XmlTextReader reader = new XmlTextReader(Data);
obj = (T)serializer.Deserialize(reader);
reader.Close();
我遇到异常“路径中的非法字符。”此错误发生在XmlTextReader reader = new XmlTextReader(Data);
请帮我解决。
答案 0 :(得分:0)
new XmlTextReader(string)
需要文件名,而不是内容。要从字符串中读取内容,您必须为该字符串实例化TextReader
。请使用StringReader
。
更好的是,不要使用XmlTextReader
,因为它已被弃用。请改用XmlReader.Create
:
string Data = upperxmlstring;
XmlReader reader = XmlReader.Create(new StringReader(Data));
obj = (T)serializer.Deserialize(reader);
reader.Close();