InputStream myInput = myContext.getAssets().open("MyFolder/" + "MyFile.db3");
我如上所述在子文件夹的资产文件夹中有一个文件。它没有获取文件,是否有一种特殊的方法可以在资产文件夹中指定子文件夹?
伊恩
编辑:关于子文件夹是错误的。这段代码在1.5上可以正常工作(对于sample.txt
文件夹下sub
文件夹中的文件assets
):
InputStream is = getAssets().open("sub/sample.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line = null;
while ((line = br.readLine()) != null) {
Log.e("wtf", line);
}
br.close();
您确定名称正确吗?
"MyFolder/" + "MyFile.db3"
添加到资产文件夹的文件的文件名必须为小写字母。因此,诸如MyFolder和Myfile.db3之类的文件名无效。将它们重命名为“ myfolder”和“ myfile.db3”,然后一切都会好起来。
您的资产文件是否超过1 MB?
[我注意到,如果我尝试打开一个超过此大小的资产,则会得到相同的,空的IOException。它在子文件夹中的事实可能是红色鲱鱼。我正在尝试打开一个大文本文件,因此我可以通过拆分将其限制。您可以对.db3文件执行类似的操作吗?
我有一个类似的问题:将子文件夹名称从“ mp3”更改为“ mpthree”,并找到了文件。