android - 无法从 Assets 打开 FileInputStream

标签 android android-assets

我正在尝试使用 FileInputStream 从 Assets 中打开文件

new FileInputStream("file:///android_asset/file.html");

但它总是抛出 FileNotFoundException,即使文件在那里

我知道我可以使用 getAssets() 等从 Assets 中打开文件(这适用于同一个文件),但这种方法不应该也有效吗?

PS。我已将我的应用程序设置为请求文件访问权限。

最佳答案

Assets 是相对于您的应用程序位置存储的,这就是绝对路径不起作用的原因。您需要使用 AssetManager 根据需要将 InputStream 检索到您的 Assets 。 getAssets() 应该可以正常工作。

关于android - 无法从 Assets 打开 FileInputStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19652692/

相关文章:

java - 使 Node JS 功能同步?在查询数据库之前发送json响应

android - 如何直接从谷歌电子表格中获取数据?

android - eclipse-android-解析 XML : not well-formed (invalid token) 时出错

Android - 将文件从 Assets 复制到/数据/数据文件夹

android - 在 Android 中更改 ActionMode 背景颜色时遇到问题

android - 数据库文件导入到Web应用程序后如何立即管理数据以供查看?

android - 从 Assets 共享 PDF。 FileUriExposedException 异常

android - 自动创建和删除 Assets 文件夹中的文件

android - 如何使用 Apache POI 给出驻留在 android 项目 Assets 文件夹中的 xls 文件的路径

java - android 上的语言支持