2011-01-18 70 views
0

我可以從Android的SAX元素類獲取XML字符串嗎?例如,在.NET中的DOM解析中,我們可以獲得節點的OuterXml或InnerXml。除非我忽略了一些東西,否則無法在Android中使用SAX或DOM解析。我是對的嗎(我不希望)?Android:從SAX元素獲取XML

使用SAX,我們可以這樣做:

Element childElt = rootElt.getChild(CHILD_ELT_NAME); 
if(childElt != null) { 
childElt.setEndTextElementListener(new EndTextElementListener() { 
    @Override 
    public void end(String body) { 
    //Do something with the body string 
    } 
}); 
} 

這將使我們獲得的子元素的「價值」。有什麼類似的東西可以讓我們獲得元素及其子元素的XML表示嗎?

謝謝。

+0

也許嘗試其他XML抽象比DOM; SAX對於這樣的任務非常不方便...對於DOM來說很簡單,並且綁定的pull解析器(或者Stax)相對簡單(比SAX)還要簡單呢? – StaxMan 2011-01-18 22:31:50

+0

DOM實際上比SAX好,但仍然是笨拙的... – 2011-01-18 23:19:49

回答

0

如果您嘗試執行樹結構敏感的操作,則應該使用DOM。你似乎試圖做的似乎符合這個描述,所以我建議你使用一個DOM解析器。 。

對於SAX V的討論大教堂(事件與樹)看到:http://www.saxproject.org/event.html

0

隨着VTD-XML,你可以得到令牌的索引,並將其轉換爲字符串作進一步處理,如果簡單是你看什麼。