我正在尝试从 assets 文件夹中读取一个 txt 文件,如下所示:
descriptor = context.getAssets().openFd("openAccess.txt");
reader = new FileReader(descriptor.getFileDescriptor());
但我得到了这个例外:
java.io.FileNotFoundException:这个文件不能作为文件描述符打开;它可能被压缩了
我不知道是什么问题?
我正在尝试从 assets 文件夹中读取一个 txt 文件,如下所示:
descriptor = context.getAssets().openFd("openAccess.txt");
reader = new FileReader(descriptor.getFileDescriptor());
但我得到了这个例外:
java.io.FileNotFoundException:这个文件不能作为文件描述符打开;它可能被压缩了
我不知道是什么问题?
这个怎么样:
InputStream in = context.getAssets().open("openAccess.txt");
reader = new InputStreamReader(in);
试试这个 :
AssetFileDescriptor descriptor = getAssets().openFd("openAccess.txt");
BufferedReader f = new BufferedReader(new FileReader(descriptor.getFileDescriptor()));
String line = f.readLine();
while (line != null) {
// do stuff
Log.d("TAG",line);
}
对我来说,它是在 /res 中创建一个“行”文件夹并在其中复制文件。然后你可以使用:
InputStreamReader iReader = new InputStreamReader(getResources().openRawResource(R.raw.text)));
像这样使用。文件路径。
context.getAssets().openFd("file:///android_asset/openAccess.txt");
您可以在 Asset 中创建新文件夹并将文件放在该文件夹中,然后尝试从该文件夹中获取该文件