Java getAssets()方法中未找到文件异常
我正试图从资产文件夹打开xml文件…但它抛出了“FileNotFoundException”,请帮助Java getAssets()方法中未找到文件异常,java,android,xml,filenotfoundexception,Java,Android,Xml,Filenotfoundexception,我正试图从资产文件夹打开xml文件…但它抛出了“FileNotFoundException”,请帮助 try { InputStream is = getAssets().open(MainActivity.pass); ............ ........... } //value of "MainActivity.pass"=sreb.xml sreb.xml以.xml格式存在于资产文件夹中 “MainAcivity
try {
InputStream is = getAssets().open(MainActivity.pass);
............
...........
}
//value of "MainActivity.pass"=sreb.xml
sreb.xml以.xml格式存在于资产文件夹中
“MainAcivity.pass”只是字符串值,我也检查过了
“MainActivity”是另一个类,因为“pass”是一个静态字符串值
try块仅处于活动中
有什么错误???您可以检查的内容:
- 从简单的事情开始:抛出异常的行真的就是您看到的行吗?仔细查看logcat以进行检查
- 要打开的文件的拼写是否正确?执行
并比较Log.d(“TAG”、“|”+MainActivity.pass+“|”)
之间的名称,包括所有空格,使其与资产文件夹中的名称完全相同“|”
- 您是否在正确的资产文件夹中查找?下面的代码提供了查看的资产文件夹中现有文件的列表,并将它们打印到logcat,以逗号和空格分隔。你的档案在里面吗
try { Log.d("TAG", Arrays.toString(getAssets().list("."))); } catch (IOException e) { Log.e("TAG", e.getLocalizedMessage(), e); }
InputStream is=getAssets().open(“sreb.xml”)
而不是静态字符串,如果需要将字符串从一个活动传递到另一个活动,请在getAssets
行之前使用intentDo aLog.d(“TAG”,MainActivity.pass)
。然后请向我们显示日志。尝试添加前缀反斜杠MainActivity.pass=“/sreb.xml”