0

以下を使用して XPath 式「/feed/entry/title」を評価しようとしています。

NodeList nodeList = (NodeList) inputXMLxpath.evaluate("/feed/entry/title", xmlDoc,
                XPathConstants.NODESET);

xmlDoc が次のような場合:

<?xml version="1.0" encoding="UTF-8"?>
<feed>
  <entry>...
<feed>

適切な結果が得られますが、xmlDoc が次のような場合:

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US">
  <entry>...
</feed>

XPath 評価の結果は常に空のリストです。

誰かがこの理由を教えて、2番目のケースでも適切な結果が得られるような解決策を提案できますか?

4

1 に答える 1

1

xmlns-"...."は名前空間宣言であり、ドキュメント内の要素の名前を変更して、「フィード」や「エントリ」とは呼ばれず、より複雑なものにする効果があります。「XPathデフォルトの名前空間宣言」のためのGoogle。

于 2012-10-30T10:51:30.283 に答える