2009-01-14 60 views
2

用C#/ .NET读/写XML的最佳功能,实践和/或技术是什么?使用C#/ .NET读/写XML

+0

找到一些相关的帖子,也是:http://stackoverflow.com/questions/220867/how-to-deal-with-xml-in-c http ://stackoverflow.com/questions/41994/parsing-an-xml-file-in-c http://stackoverflow.com/questions/55828/best-practices-to-parse-xml-files-with-c - g – greg7gkb 2009-01-14 18:42:59

回答

4

有类读取XML:

  • XmlDocument是缓慢和内存密集型:它解析XML并将其装入一个在-RAM DOM,如果你想这是个好编辑它。
  • XmlReader内存消耗较少:它从前向后扫描XML,从不需要将其全部保存在RAM中。

同样,写作你可以构造一个XmlDocument,然后保存它,或使用XmlWriter


后,我写上面,现在有一组新的API,它更容易使用的:即例如XDocumentXElement类。

+0

XPathNavigator等其他内容呢? – 2009-01-14 18:43:00

7

如果您使用的是.NET 3.5,那么LINQ to XML肯定是一种与XML交互的非常好的方法。

MSDN Link

2

在性能至关重要的应用程序中,为了简单起见,XmlReader/XmlWriter是一个不错的选择(参见here),由Linq提供给XML和XmlDocument。

3

到目前为止,我发现在C#中处理XML的最简单方法是使用XML序列化工具。例如:http://www.dotnetjohn.com/articles.aspx?articleid=173。从本质上讲,您可以定义与您的XML文件匹配的C#类(实际上,如果您有XML定义文件,您可以为它们创建它们),然后直接从XML文件初始化这些类的实例。一旦将它们作为实例使用,您可以按照自己的意愿操作它们,并轻松地将它们重新写入XML文件。