如何从文本文件中读取/加载此HashMap?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从文本文件中读取/加载此HashMap?相关的知识,希望对你有一定的参考价值。
我使用HashMap使用下面的代码在文本文档中存储我需要的信息,现在我将如何将数据加载回我的程序,目前保存工作正常。
文本文件当前存储
KEY=VALUE
所以例如我的文本文件将是:
1=value
2=value
3=value
我将东西保存到此文件的当前方式(不确定是否相关)是这样的:
public void save(HashMap<Integer, String> map) {
try {
File zone1 = new File("zones/zone1");
FileOutputStream fileOut = new FileOutputStream(zone1);
PrintWriter print = new PrintWriter(fileOut);
for (Map.Entry<Integer, String> m : map.entrySet()) {
print.println(m.getKey() + "=" + m.getValue());
}
print.flush();
print.close();
print.close();
} catch (Exception e) {
}
}
答案
如果您真的想手动(如评论所述,这已在java.util.Properties中实现),请参阅:
java.io.BufferedReader :: readLine java.lang.String :: split
另一答案
从文件中读取键值并在HashMap中存储键值的示例。
try (InputStream input = new FileInputStream("path/to/file")) {
Map<Integer,String> loadedFromTextFileHashMap=new HashMap<>();
Properties prop = new Properties();
prop.load(input);
prop.forEach((key, value) -> loadedFromTextFileHashMap.put(Integer.valueOf(key.toString()), value.toString()));
} catch (IOException io) {
io.printStackTrace();
}
以上是关于如何从文本文件中读取/加载此HashMap?的主要内容,如果未能解决你的问题,请参考以下文章