我想写和读“HashMap'提交。
我的' HashMap'是:
Map<String, ArrayList<Descipline>> mapDis = new HashMap<String, ArrayList<Descipline>>();
我写这样的文件:
String root = Environment.getExternalStorageDirectory().toString();
Properties properties = new Properties();
for (Map.Entry<String, ArrayList<Descipline>> entry : mapDis.entrySet()){
properties.put(entry.getKey(), entry.getValue());
}
properties.store(new FileOutputStream(root + "/myMap.txt"), null);
但我不知道如何阅读它。
Map<String, ArrayList<Descipline>> load = new HashMap<String, ArrayList<Descipline>>();
Properties properties1 = new Properties();
properties1.load(new FileInputStream(root + "/myMap.txt"));
for (String key : properties1.stringPropertyNames()){
//something will be here to read file
}
答案 0 :(得分:0)
您已经加载了该文件。在循环中,您正在读取文件(即地图)条目,因此只需再次使用put方法
答案 1 :(得分:0)
这很简单:java.util.Properties
是java.util.HashTable
的子类,它实现java.util.Map
,就像java.util.HashMap
一样。因此,您可以像保存时一样使用entrySet
进行迭代,同时为您提供密钥和值。
但是请注意,Properties
保存和加载需要密钥和值String
(.properties文件是简化的&#39; ini&#39;文件),因此您可能需要改为调查java.io.Serializable
。