【问题标题】:Convert XmlDocument to FileInfo将 XmlDocument 转换为 FileInfo
【发布时间】:2011-01-13 08:32:52
【问题描述】:

我有一个 Web 服务,它返回一个表示 Xml 文件的字符串。该字符串是正确格式的 xml。 我需要从字符串创建 FileInfo 对象,以便我可以反序列化它。

我没有文件路径,或者即使我这样做也没有用,因为它是一个断开连接的服务器。

我可以通过 -

将字符串转换为 XmlDocument
XmlDocument doc = new XmlDocument();
doc.LoadXml(MyString);

如何获取 FileInfo 以便可以反序列化它?请帮忙。


解决方案:

感谢您的回复。我从服务返回的字符串创建了 XmlReader,并使用 XmlSerializer.Deserialize 来获取我需要的对象。

using (XmlReader tr = XmlReader.Create(new StringReader(mystring)))
{
  XmlSerializer serializer = new XmlSerializer(typeof(<T>), extraTypes);
  <T> serizalizedForm =  serializer.Deserialize(tr) as <T>;
}

【问题讨论】:

  • 添加了 C# 标签。如果这不相关,请在 cmets 中说明。
  • 我真的不确定FileInfo 与此相关...?
  • 马克,你是对的。我不需要 FileInfo。我用解决方案更新了我的帖子。谢谢

标签: c# serialization xmldocument fileinfo


【解决方案1】:

你需要一个代表 xml 结构的类来反序列化它。使用 xsd.exe 和返回的 xml 实例,您可以创建此类(/c 开关),然后使用 xmlserializer 进行反序列化。

Here is an example of a method that deserializes the xml (Update: This link is broken)

【讨论】:

  • 杰森,链接帮助了我。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-25
  • 2014-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-11
  • 1970-01-01
相关资源
最近更新 更多