2011-03-01 67 views
1

我在這裏使用自己的圈子,答案應該很簡單。我有一個XML文件下載到我的手機並保存到SD卡。格式很簡單...使用Android解析SD卡上的XML文件

<programmes> 
    <programme> 
     <title>Tom and Jerry</title> 
     <description>Cat and mouse capers</description> 
     <start_time>...</start_time> 
    </programme> 
    <programme> 
     ... 
    </programme> 
</programmes> 

基本上所有我想要做的是檢索所有<programme>元素和分析,這將被用來創建一個SQL INSERT命令來填充一個SQLite數據庫的內部數據。

我試過使用DOM,但使用Document.parse()使我內存不足(xml文件大小爲3.5MB)。我從來沒有與SAX合作過,也找不到一個對我想要做事情的想法有意義的例子,儘管我已經使用了XPATH,但我仍然找不到使用可用的android apis的任何示例。

正如我所說的,我確信這很容易,這只是我的方法是錯誤的,所以我會很感激任何指示這樣做。

+0

你已經看過了[javax.xml.xpath](http://developer.android.com/reference/javax/xml/xpath/package-summary.html)包嗎? – 2011-03-01 04:37:42

+0

是的,但我找不到使用它的任何好的示例代碼。 – Squonk 2011-03-02 02:21:50

回答

3

This article詳細介紹Android上可用的所有三種XML解析方法:DOM,SAX和pull解析器。希望有所幫助。

+0

我真的看過那篇文章,但它讓我更加困惑。早上5點做這些事情可能不太好,就像我昨天一樣。 ;-)我重新看了一篇文章,並調整了AndroidSaxFeedParser示例和相關代碼,以使用FileInputStream生成List 結果。目前看起來不錯 - 感謝讓我再讀一遍。 :d – Squonk 2011-03-02 02:28:16