3

我的 xml 数据是:

<response>
<result name="response" numFound="2" start="0">
<doc><str name="Author">ALi Ahmadi</str><int name="BookID">1904</int><str name="Title">BookName 1</str></doc>
<doc><str name="Author">Reza Javadi</str><int name="BookID">1523</int><str name="Title">BookName 2</str></doc>
</result>
</response>

我的 C# 代码是:

XmlDocument XmlDoc = new XmlDocument();
XmlDoc.LoadXml(ResultData);

XmlNodeList XnList = XmlDoc.SelectNodes("/response/result/doc");
foreach (XmlNode Xn in XnList)
{
    string a = Xn["str"].InnerText;
    string b = Xn["int"].InnerText;
    string c = Xn["str"].InnerText;
    //string c = Xn["str[@name='Title']"].InnerText;//error !
}

a & c 结果是:“Ali Ahmadi”,如何在 c 变量中获得“BookName 1”?

4

2 回答 2

2

如果您知道节点“标题”的索引,则可以通过以下代码获取它的 inerrHTML:

     c = Xn.ChildNodes[2].InnerText;
于 2012-05-28T07:36:36.143 回答
0

尝试这个

 string c = Xn["str"].Attributes["Title"].Value
于 2012-05-28T06:17:53.483 回答