我正在尋找解決方案來從res/xml文件夾與DOM解析xml文件(讀取,修改xml)。
方法DOM xml解析從Android中的文件res/xml
getResources().getXml(id)
只是返回XmlResourceParser對象,我怎麼能轉換成文檔解析? 我也跟着this question但它沒有幫助。
我該如何解決這個問題?提前致謝!
我正在尋找解決方案來從res/xml文件夾與DOM解析xml文件(讀取,修改xml)。
方法DOM xml解析從Android中的文件res/xml
getResources().getXml(id)
只是返回XmlResourceParser對象,我怎麼能轉換成文檔解析? 我也跟着this question但它沒有幫助。
我該如何解決這個問題?提前致謝!
您應該將在res/raw
文件夾中的XML文件,然後你可以使用getResources().getRawResource(R.raw.resource_id)
得到一個InputStream
,你可以使用所有標準的DOM方法(把它包在InputSource
等)處理。
謝謝,它爲我工作。但我不明白res/raw和res/xml之間的區別。你能解釋一下嗎?爲什麼我不能使用res/xml? – R4j 2012-04-12 08:14:08
res/xml中的XML文件在編譯時被解析並存儲在apk中,可以使用'getResources()。getXml'檢索結構,但原始數據不可用。 'res/raw'中的所有文件都以一種可以通過'getRawResource'作爲InputStream檢索的形式存儲在apk中。你可以在http://developer.android.com/guide/topics/resources/index.html上閱讀更多內容。 – Femi 2012-04-12 08:18:01
你可以參考這個鏈接,低於
https://github.com/commonsguy/cw-android/tree/master/Resources/XML
這是DOM parcer的簡單的演示這是調用XML文件從locally.so你可以嘗試 也webservices..try,使確保你得到你的數據
SAX最適合解析XML我認爲。 – 2012-04-12 06:50:27
注意:如果你從'res/xml'文件夾中讀取一個文件並得到一個Document文件,你不能保存任何你在res/xml文件夾中的原始文件的修改。 – Femi 2012-04-12 06:59:03
@PareshMayani我也想編輯xml,所以SAX是不夠的。 – R4j 2012-04-12 07:45:43