[英]How can I fetch specific nodes from XML using XPath in Java?
我的xml文件結構是這樣的
<?xml version="1.0" encoding="utf-8" ?>
<book>
<chapters>
<chapter id="1">
<page id="1" cid= "1" bid = "Book1">
<text>Hi</text>
</page>
<page id="2" cid= "1" bid = "Book1">
<text>Hi</text>
</page>
</chapter>
<chapter id="2">
<page id="1" cid= "2" bid = "Book1">
<text>Hi</text>
</page>
<page id="2" cid= "2" bid = "Book1">
<text>Hi</text>
</page>
</chapter>
<chapter id="3">
<page id="1" cid= "3" bid = "Book1">
<text>Hi</text>
</page>
<page id="2" cid= "3" bid = "Book1">
<text>Hi</text>
</page>
</chapter>
</chapters>
</book>
我希望通過傳遞頁面ID和章節ID來獲取特定的頁面節點。 我怎樣才能做到這一點?
此外,書籍節點包含太多章節,每章包含許多頁面。 所以,我正在使用SAX解析器來解析內容。
“我如何使用Java中的XPath從XML中獲取特定節點?”
我對Java和Android不是很熟悉,但是從XML樣本中獲取特定page
的xpath,傳遞page id
和chapter id
應該是這樣的:
//chapter[@id='chapter_id_here']/page[@id='page_id_here']
簡要說明 :
//chapter
:在XML中的任何地方找到chapter
元素... [@id='chapter_id_here']
:...其中id
屬性值等於特定章節id /page
:從每個過濾的chapter
元素中,找到子元素page
... [@id='page_id_here']
:...其中id
屬性值等於特定頁面ID 您可以按照以下線程實現在Java中執行xpath表達式: 如何在Java和Android中使用XPath讀取XML :在Android中使用XPath 在XML文件中搜索
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.