我让这段代码在纯 Java 中完美运行,但我现在在 android 中运行它时遇到 IO 异常。文件保存在 assets/
BufferedReader br = new BufferedReader(new FileReader("adverbs"));
String line = "";
int i = 0;
while (line != null) {
line = br.readLine();
mapAdverbs.put(i, line);
Log.d("worked", "worked");
i++;
}
mapAdverbs
被初始化为Map<Integer, String> mapAdverbs = new HashMap<Integer, String>();
这仍然是正确的方法吗?我需要为 Android 更改一些内容吗?
编辑:FileReader 不适用于 Assets 管理器,所以
InputStreamReader(getAssets().open("filename"))
需要
最佳答案
如果您想阅读 Assets 中的文件,
BufferedReader reader = null;
try {
reader = new BufferedReader(
new InputStreamReader(getAssets().open("adverbs")));
// do reading, usually loop until end of file reading
} catch (IOException e) {
//log the exception
}
关于java - 将数据从文件读入hashmap Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30370379/