我想显示来自我的xml文件的数据和
这是我的xml文件
<table>
<tr class="even">
<td class="ltid">1</td>
<td class="ltn">لستر سیتی</td>
<td class="ltg">31</td>
<td class="ltw">19</td>
<td class="ltd">9</td>
<td class="ltl">3</td>
<td class="ltgf">54</td>
<td class="ltga">31</td>
<td class="ltgd" dir="ltr">+23</td>
<td class="ltp">66</td>
</tr>
<tr>
<td class="ltid">2</td>
<td class="ltn">تاتنهام</td>
<td class="ltg">31</td>
<td class="ltw">17</td>
<td class="ltd">10</td>
<td class="ltl">4</td>
<td class="ltgf">56</td>
<td class="ltga">24</td>
<td class="ltgd" dir="ltr">+32</td>
<td class="ltp">61</td>
</tr>
<tr>
<td class="ltid">3</td>
<td class="ltn">آرسنال</td>
<td class="ltg">30</td>
<td class="ltw">16</td>
<td class="ltd">7</td>
<td class="ltl">7</td>
<td class="ltgf">48</td>
<td class="ltga">30</td>
<td class="ltgd" dir="ltr">+18</td>
<td class="ltp">55</td>
</tr>
</table>
&#13;
我希望得到第三支球队
我想得到'<td class="ltid">3</td>'
这是我试过的代码
var doc = XDocument.Parse(richTextBox2.Text);
var navigator = doc.CreateNavigator();
var contentCell = navigator.SelectSingleNode("//td[@class='ltid']");
txtTeam.Text = contentCell.Value;
但我不知道如何使用此类值获得第三个td
我搜索找到答案,但我找不到答案
我在这之前编写了另一个代码,但在第一个<tr>
我们有3个,所以它只是从第一个<tr>
而不是第三个<tr>
发现的
请帮助我从第三个<tr>
答案 0 :(得分:0)
这是一种方式:
(//td[@class='ltid'])[3]
XPath将从整个XML文档返回第3次出现td[@class='ltid']
。
答案 1 :(得分:0)
有三种方法可以做到这一点:
xpath 1: //tr[3]/td[@class='ltid']
xpath 2: //td[@class='ltid'])[3]
xpath 3: //td[contains(text()='3')]
答案 2 :(得分:0)
您可以尝试:
var nav = doc.CreateNavigator();
XPathNodeIterator iterator = nav.Select("//td[@class='ltid']");
while (iterator.MoveNext())
{
// do whatever you want with your item
}