2015-02-12 84 views
1

我想獲得Java中元素的標籤類型。 例如,對於XML如何獲取java中元素的標籤類型

<xml> 
<item> 
    <content></content> 
</item> 
</xml> 
如果我想尋找的類型「項」的第一個標籤

,我需要發現特定類型的所有標籤的一些方法。

有沒有辦法做到這一點?

+0

你需要某種解析器。喜歡JaxB?看起來JAXB不適用於Android。所以你必須使用支持Android的解析器 – 2015-02-12 05:44:18

+0

你需要檢查一下像DOM這樣的XML解析器。 – 2015-02-12 05:44:22

+0

@ user1354678 AFAIK,JAXB不適用於Android。 – laune 2015-02-12 05:47:53

回答

0

最簡單的方法是XPath

由於您需要根標記<xml>下的<item>標記,因此表達式需要的是xml/item

在Android中,要做到這一點的方法是:首先 ,得到一個XPath實例:

XPath xpath = XPathFactory.newInstance().newXPath(); 

下,得到一個InputSource的保持。檢查鏈接的不同方式來做到這一點。

接下來,用它來找到節點:

NodeList nodes = (NodeList) xpath.evaluate("xml/item", inputSource, XPathConstants.NODESET); 

現在,NodeList包含您<item>元素。

+0

我在這裏提到的任何一個類都不需要額外的庫,或者「native」是什麼意思? – 2015-02-12 07:44:05

2

的有許多方法可以使動態的XML:

  1. XmlSerializer的

實施例:

  • StringBuilder的使用可修改的接口。
  • 實施例:

    Editable string= string.append("<Type> " + VALUE 
               + " </Type>" + "<Text>" 
               + VALUE + "</Text>"+ "<Field>" 
               + VALUE + "</Field>"); 
    

    我已經實際執行這兩種方法,第2一個更容易,並且使用較少的代碼行。

    參考:link

    相關問題