我花了几个小时阅读标题查询产生的stackoverflow中的各种匹配。
使用Android Studio。
我的src \ main \ assets项目目录中有一个txt文件,我想打开并阅读。
我发现的所有示例似乎都使用 AssetManager()或 getAssets()。
我无法使用其中任何一种工作。
InputStreamReader isr = new InputStreamReader(AssetManager.AssetInputStream("xxx.csv"));
生成错误:AssetManager中的AssetManager()不公开;无法从外部包裹访问
访问my / assets文件夹中的文件需要做些什么才能打开并阅读?
编辑将此标记为重复的问题是我已阅读过同一主题的其他帖子,但用户原始问题(我也一样)永远不会被回答!答案是向用户展示如何读取文件。但问题是(与我的相同):方法未被识别。在我的情况下(见下面关于答案的评论)我得到错误:找不到符号方法getAssets()。
任何人都可以帮我吗?所有示例都显示了
的示例代码AssetManager am = getAssets();
但缺少一些东西。
答案 0 :(得分:4)
您可能想要尝试的是:
AssetManager am = getAssets();
InputStream is;
is = am.open(pathToFile.txt);
然后使用byte []缓冲区(使用is.available();获取大小)和is.read(缓冲区) 阅读后不要忘记is.close()。
如果您不在Activity中,则必须使用context.getAssets()才能获取AssetManager。
希望对你有所帮助。