0
私はこれについてかなりインターネットを検索しましたが、次の単純なコードが動作するようにはまだ苦労しています。誰も私に手を差し伸べることはできますか?Android XML XPathエラー
ターゲットプラットフォームはAndroid 2.2です。
評価すると、1ノードが返されますが、値はnullです - ファイル名が必要です。
XMLの読み取りコード:
public String GetValue(String data, String xpath) {
String value = "";
XPath path = XPathFactory.newInstance().newXPath();
try {
XPathExpression exp = path.compile(xpath);
Document doc = this.GetDocument(data);
NodeList nodes = (NodeList)exp.evaluate(doc, XPathConstants.NODESET);
if(nodes.getLength() > 0) {
value = nodes.item(0).getNodeValue();
}
} catch (XPathExpressionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return value;
}
電話番号:
XMLHelper xhelp = new XMLHelper();
this.FileName = xhelp.GetValue(fileData, "tilesheet/filename");
XML:
<?xml version="1.0" encoding="utf-8"?>
<tilesheet>
<filename>sheet.png</filename>
<cellwidth>32</cellwidth>
<cellheight>32</cellheight>
<columns>9</columns>
<cellcount>9</cellcount>
</tilesheet>
はあなたの助けをありがとうございました、
リチャード・ヒューズ
あなたは実際にXPath式を指定しますか? – kdgregory
呼び出しコード:tilesheet/filename – rhughes
私の間違いで、私は十分に注意深く読んでいませんでした。私はドキュメントをチェックしたところ、Elementのノード値は 'null 'と定義されています。 'STRING'の戻り値の型を使用し、XPathを' tilesheet/filename [1] ' – kdgregory