Ich habe ein XML-Dokument, das ich mit HTML Agility Pack mit XPath analysieren möchte. Dies ist mein Code, um die Elemente zu erhalten:
HtmlDocument htmldoc = new HtmlDocument();
htmldoc.Load(fileName);
HtmlNodeCollection nodes = htmldoc.DocumentNode.SelectNodes("feed/l");
Dies ist mein XML-Dokument
<?xml version="1.0" encoding="UTF-8"?>
<feed>
<tm>5701</tm>
<tp>1141</tp>
<pnr>1</pnr>
<l type="TEXT">
<ca>
<c id="21">JA</c>
</ca>
<pts>
<pt id="5">DO</pt>
</pts>
<od>MA 99</od>
<osd>2014-02-21</osd>
<od>2014-02-22</od>
<cu>url</cu>
<ip>ip</ip>
<ai>3184</ai>
<an>com</an>
<n id="1">US n</n>
</l>
</feed>
Ich versuche, alle Knoten zu bekommen, die Kinder von l
und ihren Kindern sind, aber mein XPath gibt Knoten mit l
als eine Sammlung zurück, aber die Kinder sind null. Die Knoten, nach denen ich suche, gruppiert nach l
sind diese
<ca>
<c id="21">JA</c>
</ca>
<pts>
<pt id="5">DO</pt>
</pts>
<od>MA 99</od>
<osd>2014-02-21</osd>
<od>2014-02-22</od>
<cu>url</cu>
<ip>ip</ip>
<ai>3184</ai>
<an>com</an>
<n id="1">US n</n>
aber es gibt keine Kinder. Bitte helfen Sie mir, dass mein XPath korrekt ist.
Dein XPath sollte sein
feed/l/*
wie du willst das Kinderelement von l
. Also in deinem Code sollte es sein
HtmlNodeCollection nodes = htmldoc.DocumentNode.SelectNodes("feed/l/*");