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 に答える