0

我有一个如下所示的 XML 文件:

<root>
    <song id="1">
        <name> A Whole New World </name>
        <artist> Lea Salonga </artist>
    </song>
    <song id="2">
        <name> Colors of the Wind </name>
        <artist> Judy Kuhn </artist>
    </song>
    <song id="3">
        <name> Reflection </name>
        <artist> Lea Salonga </artist>
    </song>
    <song id="4">
        <name> Part of Your World </name>
        <artist> Sierra Boggess </artist>
    </song>
</root>

我想用 C# 解析这个 XML 文件。我知道我应该用它System.Xml.XmlDocument来解析 XML 文件。微软文档说方括号运算符[Name]只返回“具有指定的第一个子元素Name”。

所以我的问题是: 如何从上面的示例 XML 文件中获取 id 为 4 的歌曲的名称?

4

2 回答 2

2

查看 Xpath 并使用 xpath 查询,您可以在这里进行测试http://www.xpathtester.com/test

//song[@id="4"]/name

在 c# 中转义“ char 与 \ like

"//song[@id=\"4\"]/name"
于 2013-08-14T00:31:46.183 回答
0

如果您不想使用 Xpath 查询,可以使用旧方法:

您可以遍历子节点,检查元素名称为“歌曲”的每个子节点,然后检查属性,然后获取名称。但是 Xpath 会更短。

于 2013-08-14T04:10:04.180 回答