使用C#/ .NET读/写XML
使用C#/ .NET读取/写入XML的最佳function,实践和/或技术是什么?
有些类可以读取XML:
-
XmlDocument
速度慢且占用大量内存:它解析XML并将其加载到内存中,如果你想编辑它,这很好。 -
XmlReader
的内存密集度较低:它从前到后扫描XML,从不需要将所有内容保存在RAM中。
同样,对于编写,您可以构造一个XmlDocument
,然后保存它,或使用XmlWriter
。
在我编写完上述内容之后,现在有一组更易于使用的新API:例如XDocument
和XElement
类。
如果您使用的是.NET 3.5,那么LINQ to XML肯定是与XML交互的一种非常好的方式。
MSDN链接
到目前为止,我在C#中处理XML的最简单方法是使用XML序列化工具。 例如: http : //www.dotnetjohn.com/articles.aspx?articleid = 173 。
实际上,您可以定义与XML文件匹配的C#类(实际上,如果您有XML定义文件,可以为它们创建它们),然后直接从XML文件初始化这些类的实例。 将它们作为实例后,您可以根据需要对它们进行操作,并将它们重新编写回XML文件中。
在性能关键的应用程序中,为了简单起见,XmlReader / XmlWriter是一个很好的选择(参见这里 ),Linq提供给XML和XmlDocument。
我发现MvpXml项目在考虑性能的过去场景中非常有用。 在项目页面中有很多关于良好实践的知识: http : //www.codeplex.com/MVPXML