使用C#从XML中提取文本

时间:2012-02-08 15:37:52

标签: c# xml parsing text

我使用如下所示的XML文档:

enter image description here

我需要的是在标签之间提取文本。由于它是由一个普通的XML编辑器成功地用黑色突出显示的,我假设我应该能够手动提取它?

到目前为止,我已经尝试了以下内容:

private void Form1_Load(System.Object sender, System.EventArgs e)
{
    XmlDocument doc = new XmlDocument();
    doc.Load("C:\\users\\admin\\desktop\\index.xml");

    foreach (object node_loopVariable in doc.ChildNodes) {
        node = node_loopVariable;
        ProcNode(node);
    }
}

private void ProcNode(XmlNode node)
{
    Console.WriteLine(node.InnerText);

    foreach (XmlNode subNode in node.ChildNodes) {
        Console.WriteLine(subNode.InnerText);
    }
}

这是一个可靠的解决方案吗?

2 个答案:

答案 0 :(得分:1)

使用XDocument类读取XML并使用LINQ to XML查询它。

答案 1 :(得分:0)

你可以这样做:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("App_Data/file.xml"));
XmlElement xelNo = xmlDoc.GetElementById("ElementID");

然后您可以访问此元素的属性或文本;
但要使用它,您必须知道元素的ID。