我是
Java的新手,所以我不知道最好的办法.我有一个数据结构,我想在关闭程序之前能够写入一个文件,然后从文件中读取,以在下次应用程序启动时重新填充结构.
我的结构是HashMap< String,Object>.对象很简单;对于成员变量,它有一个String和两个类型Boolean的小本地数组.这是一个真正的简单应用程序,我不会指望超过10-15个< key,value>一对一对.
我一直在尝试(不成功)与对象输入/输出流.我需要使Object类可序列化吗?
你可以给我最好的方式做任何建议吗?我只需要推动正确的方向.谢谢!
编辑:我觉得很笨,我正在从一张地图上写下来,另外读一张地图,然后比较他们来检查我的结果.显然我正在比较他们错了.叹.
解决方法
如果你不特别关心对象,你只需要一个String,String的键值对,那么我建议你去
java.util.Properties
.否则在这里你去
Map map = new HashMap(); map.put("1",new Integer(1)); map.put("2",new Integer(2)); map.put("3",new Integer(3)); FileOutputStream fos = new FileOutputStream("map.ser"); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(map); oos.close(); FileInputStream fis = new FileInputStream("map.ser"); ObjectInputStream ois = new ObjectInputStream(fis); Map anotherMap = (Map) ois.readObject(); ois.close(); System.out.println(anotherMap);