4
考慮下面的XML獲得屬性的文本在XML使用VTD-XML的Java中
VTDGen vg = new VTDGen();
vg.setDoc(xmlContent);
vg.parse(false);
VTDNav vn = vg.getNav();
AutoPilot ap = new AutoPilot(vn);
int node = 0;
ap.selectXPath("//SSG[1]/@q");
node = ap.evalXPath();
if(node != -1) {
myString = vn.toString(node);
}
這將myString設置爲'q'而不是'textGoal'。我有兩個問題:
- 我在做什麼錯?
- 我知道'textGoal'是URL轉義的。 vtd-xml是否可以做URL-UNescape,還是我必須自己做這個?
問候
但是當我的路徑變量時該怎麼辦?我應該怎麼知道它是否請求一個屬性(調用'getAttributeVal(vn.toString(node))'或'toString(node + 1)')或不調用(調用'toString(node)')? – halloei 2015-01-15 14:07:57
可變路徑是什麼意思? – 2015-01-15 18:33:07
用戶可以放入XPath'/ foo/bar/text()','/ foo/bar/@ attr'或'/ foo [@ attr ='baz']/bar/text()' - 我不會不知道。我如何知道使用哪個vtd-xml方法?或者爲什麼沒有一種全能的方法? – halloei 2015-01-16 07:57:31