我正在尝试使用assetmanager解析由字符串引用的xml文件,感谢SO提供了很多帮助,这是我到目前为止所拥有的。
Document doc = db.parse(assetManager.open(Resources.getSystem().getString(R.string.FileName)));
String filename是我的questions.xml文件,我这样做,所以最终我可以在我的应用程序上强制实现多个xml文件的本地化。但是我的应用程序无法读取R.string.FileName,并导致应用程序出错。有人可以帮我从这里出去吗?
答案 0 :(得分: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));