私はJava 1.6を使用しています。 org.w3c.dom.Node
オブジェクトが与えられている場合、そのノードがXML文書のどこにあるかを表すString XPath式を取得するにはどうすればよいですか?このノードまたはその祖先/子孫のいずれかがid
属性を持っていることは条件です。Java:org.w3c.dom.Nodeのxpathを取得するにはどうすればよいですか?
答えて
私はDOM経由で簡単な方法があるとは思わない。問題は、指定されたノードを識別する標準的な方法が1つもないことです。
あなたはdiffxml役に立つから関数getXPathを見つけるかもしれない、と述べた:http://diffxml.cvs.sourceforge.net/viewvc/diffxml/diffxml/src/java/org/diffxml/diffxml/fmes/NodeOps.java?view=markup
それは、フォーム/ノードのXPathを(戻ります)[4] /ノード()[2]など
更新:diffxmlはGPLライセンスでgetXPathは少し抜き取るので、Apacheライセンスでgithub:https://github.com/amouat/XPathGenのXPathGenとしてリリースしました。
ノードを表現するための標準的な方法はないかもしれませんが、いつでも正確に行うことができます。ポジション。 –
@lwburkそれはリンクされたコードです:) –
私はデバッグの目的のためにこのようにコードを使用します。いい物。 – JohnnyK
あなたは、このようなこの1のように再帰的な方法にあなたのノードと空の文字列を渡すことができます。
static void xpm(Node node, String xpath){
if (node.getParentNode()==null){
System.out.println(xpath);
return;
}
xpath = "/"+node.getNodeName()+xpath;
node = node.getParentNode();
xpm(node, xpath);
}
- 1. テキストの横にURLがあるxpathを取得するにはどうすればよいですか?
- 2. XPath/XQueryですべての世代を取得するにはどうすればよいですか?
- 3. xpathで同様の属性を取得するにはどうすればよいですか?
- 4. XPATHで特定のタグを取得するにはどうすればよいですか?
- 5. このxpath式で内部HTMLコンテンツを取得するにはどうすればよいですか?
- 6. XPathを使用してノードの値を取得するにはどうすればよいですか?
- 7. この要素のxpathを取得するにはどうすればよいですか?
- 8. Logic App xpath - json構文なしで値を取得するにはどうすればよいですか?
- 9. XPathNavigatorが有効なXmlNodeにXPathを取得するにはどうすればよいですか?
- 10. 相対XPathを持つ要素を取得するにはどうすればよいですか?
- 11. XPathを使用して要素を取得するにはどうすればよいですか?
- 12. XPathの直接の親に戻ってテキストを取得するにはどうすればいいですか?
- 13. Silktest XPathでアスタリスクをエスケープするにはどうすればよいですか?
- 14. xpathにコメントを追加するにはどうすればよいですか?
- 15. XPath式を最適化するにはどうすればよいですか?
- 16. ウェブサイトのアイコンを取得するにはどうすればよいですか?
- 17. オーバーレイオブジェクトのイベントハンドラを取得するにはどうすればよいですか?
- 18. s3のレイテンシービューを取得するにはどうすればよいですか?
- 19. リダイレクトページのページコンテンツを取得するにはどうすればよいですか?
- 20. チェックインコードのみを取得するにはどうすればよいですか?
- 21. VS.Phpのカラーオプションを取得するにはどうすればよいですか?
- 22. webpackのライブリロードを取得するにはどうすればよいですか?
- 23. modelmetadataのモデルを取得するにはどうすればよいですか?
- 24. リストのアドレスを取得するにはどうすればよいですか?
- 25. デスクトップウィンドウのハンドルを取得するにはどうすればよいですか?
- 26. LinkedHashMapのkeyIteratorを取得するにはどうすればよいですか?
- 27. ツイートのURLを取得するにはどうすればよいですか?
- 28. ユーザーグループのスピーカーを取得するにはどうすればよいですか?
- 29. このボタンレイアウトを取得するにはどうすればよいですか?
- 30. nightwatchjsのスクリーンショットを取得するにはどうすればよいですか?
これはSO上でJavaScriptが何回も回答されています。あなたは、それらの答えのいくつかを見ることからいくつかの使用を得るかもしれません。このように:http://stackoverflow.com/questions/2661818/javascript-get-xpath-of-a-node –