2011-05-31 46 views
1

我試圖找到從互聯網上存儲XML文件的最佳方式,以便我可以在以後解析它們。我有一個下載的XML文件,並將其存儲在從互聯網上存儲和解析XML

/數據/數據/包名/文件

文件夾中沒有問題。然而,我不確定如何在保存文件後讀取此文件,並將讀取的文件傳遞給SAX解析器的實例。另外,我注意到從手機中讀取文件的速度很慢,這是一個值得關注的問題。

我已經閱讀在res/xml文件夾中存儲XML文件是更快 - 但我不知道是否有可能在運行時將文件從互聯網保存到此文件夾?

任何幫助,將不勝感激:)

Cheeers

回答

2

將其存儲在緩存目錄中。

getCacheDir(); 

所以可以說filename = getCacheDir() + file123.xml;

+0

不僅是因爲儘管臨時文件的緩存目錄?如果我想保留文件直到用戶「刷新」,該怎麼辦? – jsw 2011-05-31 08:32:55

+0

只有在沒有足夠的空間時纔會被刪除。 你想保留文件多長時間? – Hades 2011-05-31 09:50:21

2

你不能寫res文件夾都沒有。這些資源在編譯時編譯到您的應用程序中,並且是隻讀的。至於讀文件,你應該能夠以標準的java方式爲它創建一個輸入流,並使用你的sax解析器解析出這些字節。

本指南的這一部分介紹瞭如何訪問內部和外部文件系統以及如何獲取輸入/輸出流。 http://developer.android.com/guide/topics/data/data-storage.html#filesInternal