2012-12-05 63 views
0

我正在嘗試使用assetmanager解析一個字符串引用的xml文件,因此我得到了很多幫助,這是迄今爲止我所擁有的。Android Assetmanager字符串解析

Document doc = db.parse(assetManager.open(Resources.getSystem().getString(R.string.FileName))); 

字符串文件名是我的questions.xml文件,我這樣做是這樣,最終我能在我的應用程序的多個XML文件執行本地化。但是我的應用程序無法讀取R.string.FileName,並且出錯應用程序。有人可以幫我從這裏出去嗎?

+1

你爲什麼不使用常規的方式做[localitzation](HTTP ://developer.android.com/guide/topics/resources/localization.html)? – zapl

+0

我已經使用普通方法本地化了其他所有內容,但我需要將資源中的xml保留。 – WiseGuy

回答

4

Resources.getSystem()只讀取系統資源(android.R.x.x)。

如果你的代碼是在Activity,使用以下命令:

String fname = getResources().getString(R.string.FileName); 
Document doc = db.parse(assetManager.open(fname)); 

否則,使用此:

String fname = context.getResources().getString(R.string.FileName); // `context` is a Context object which you need to pass to this. 
Document doc = db.parse(assetManager.open(fname)); 
+0

太棒了,感謝Eric的回覆。這也幫助我更好地理解上下文對象:) – WiseGuy