2012-04-05 53 views
2

我正在開發一個使用普通java應用程序的代碼的android應用程序。 在這個Java應用程序我解析的XML文件,我得到這樣的:解析android中的xml文件

File xmlFile = new File("../project/src/resources/words.xml"); 

現在的Android這似乎並沒有工作。我得到一個文件未找到異常。 我試圖將該文件保存在res/xml目錄中,但我不確定如何實現。

我可以使用相同的代碼來解析XML,因爲我用於我的Java應用程序,或者有沒有一種特殊的方式來解析android中的XML文件?

回答

1

什麼是../project/src/resources.words.xml?這是開發計算機上的項目目錄中的路徑名嗎?當然,Android程序不會訪問您計算機上定義的文件路徑。

如果words.xml是您想要訪問的靜態文件,則應將其包含在項目的/res/raw子目錄中。然後,你可以使用文檔在這裏描述的方法訪問它:

http://developer.android.com/reference/android/content/res/Resources.html#openRawResource(int

或者,你可以把它放在/assets並使用此方法:

http://developer.android.com/reference/android/content/res/AssetManager.html

+0

我使用了/ assets方法,它使用了我的舊xml解析方法 – hhh3112 2012-04-18 18:05:21

1

你可以這樣做:

InputStream is = this.getResources().openRawResource(resourceId); 
BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
... then read the content of the file as a stream ... 

您的文件必須放在res/raw/yourfileresourceIdR.raw...中對應於您的文件名的整數(R.raw.yourfile