如何解析XML文件?

有没有一种简单的方法来解析C#中的XML文件? 如果是这样,什么?


如果你使用.NET 3.5或更高版本,我会使用LINQ to XML。


这很简单。 我知道这些都是标准方法,但是您可以创建自己的库来处理更好的问题。

这里有些例子:

XmlDocument xmlDoc= new XmlDocument(); // Create an XML document object
xmlDoc.Load("yourXMLFile.xml"); // Load the XML document from the specified file

// Get elements
XmlNodeList girlAddress = xmlDoc.GetElementsByTagName("gAddress");
XmlNodeList girlAge = xmlDoc.GetElementsByTagName("gAge"); 
XmlNodeList girlCellPhoneNumber = xmlDoc.GetElementsByTagName("gPhone");

// Display the results
Console.WriteLine("Address: " + girlAddress[0].InnerText);
Console.WriteLine("Age: " + girlAge[0].InnerText);
Console.WriteLine("Phone Number: " + girlCellPhoneNumber[0].InnerText);

此外,还有其他一些方法可以使用。 例如,在这里。 我认为没有最好的方法来做到这一点; 你总是需要自己选择,最适合你的是什么。


使用一个好的XSD Schema来创建一组使用xsd.exe的类,并使用XmlSerializer从XML中创建一个对象树,反之亦然。 如果您对模型没有什么限制,甚至可以尝试在模型类和XML与Xml *属性之间创建一个直接映射。

有关于MSDN上的XML序列化的介绍性文章。

性能提示:构建一个XmlSerializer是很昂贵的。 如果您打算解析/写入多个XML文件,请保留对您的XmlSerializer实例的引用。

链接地址: http://www.djcxy.com/p/5081.html

上一篇: How does one parse XML files?

下一篇: Best way to parse an invalid HTML in PHP