Android ContextWrapper fileList()没有看到我的文件

时间:2015-06-20 16:33:02

标签: java android

我在res / raw文件夹中有一个xml文件,我想在我的应用程序中使用它。为什么当我在真实设备上进行调试时,fileList()没有看到它?

1 个答案:

答案 0 :(得分:2)

ContextWrapper' s fileList()不会返回res / raw的内容,而是您在上下文的应用程序包中存储的文件,例如{{1} }})。要检索res / raw的内容,您可以使用反射。 E.g。

/data/data/your.app/

它将返回public ArrayList<String> listRaw() { ArrayList<String> raw = new ArrayList<>(); Field[] fields = R.raw.class.getFields(); for (int i = 0; i < fields.length; i++) { raw.add(fields[i].getName()); } return raw; } ,内容为List<String>。如果你想获得id,你可以使用

res/raw

编辑,复制文件

getResoruces().getIndentifier(name, "raw", getPackageName());