且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

从c#windows窗体应用程序中的xml文件逐行读取数据

更新时间:2023-10-21 17:08:28

逐行读取XML数据将完全违背XML的目的。 XML文本并不是真正面向行的。你应该更好地使用.NET FCL上提供的XML解析器,而不是自己动手(为什么?)。这是我对它们的简短回顾:



Reading data from XML line by line would totally defeat the purpose of XML. And XML text is not really line-oriented. Instead of doing it by yourself (why?) you should better use on of XML parsers available on .NET FCL. This is my short review of them:



  1. 使用 System.Xml.XmlDocument class。它实现了DOM接口;如果文档的大小不是太大,这种方式是最简单和***的。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx [ ^ ]。
  2. 使用类 System.Xml.XmlTextReader ;这是最快的阅读方式,特别是你需要跳过一些数据。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx [ ^ ]。
  3. 使用类 System.Xml.Linq.XDocument ;这是类似于 XmlDocument 的最合适的方式,支持LINQ to XML Programming。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx [ ^ ],http://msdn.microsoft.com/en-us/library/bb387063.aspx [ ^ ]。

  1. Use System.Xml.XmlDocument class. It implements DOM interface; this way is the easiest and good enough if the size if the document is not too big.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx[^].
  2. Use the class System.Xml.XmlTextReader; this is the fastest way of reading, especially is you need to skip some data.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx[^].
  3. Use the class System.Xml.Linq.XDocument; this is the most adequate way similar to that of XmlDocument, supporting LINQ to XML Programming.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx[^], http://msdn.microsoft.com/en-us/library/bb387063.aspx[^].





祝你好运,

-SA