我正尝试使用以下方法访问存储在资产文件夹中的zip文件:
val filePath = Uri.parse("file:///android_asset/testfile_v1.1.1.zip").toString()
但是,即使我确定文件存在并且我也不知道为什么,我仍然遇到FileNotFound错误。
任何建议都值得赞赏。
错误:
java.io.FileNotFoundException: file:/android_asset/testfile_v1.1.1.zip (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:200)
at java.io.FileInputStream.<init>(FileInputStream.java:150)
at java.io.FileInputStream.<init>(FileInputStream.java:103)
用例:
private InputStream openInputStream(final String filePath, final String mimeType, final int mbrSize, final int types) throws IOException {
final InputStream is = new FileInputStream(filePath);
if (MIME_TYPE_ZIP.equals(mimeType))
return new ArchiveInputStream(is, mbrSize, types);
if (filePath.toLowerCase(Locale.US).endsWith("hex"))
return new HexInputStream(is, mbrSize);
return is;
}
答案 0 :(得分:0)
如果路径/android_asset/testfile_v1.1.1.zip
确实正确,则可能是因为您在输入的未转义路径中错过了一个斜线,即file:///
而不是file:////