我有一个数据结构,我希望能够在关闭程序之前写入文件,然后在下次应用程序启动时从文件中读取数据以重新填充该结构。
我的结构是HashMap<String, Object>
。对象很简单;对于成员变量,它具有一个String和两个布尔类型的小型本机数组。这是一个真正简单的应用程序,我希望一次不会超过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);
可引导的软盘一般被视为是最后一种方法用于在那些不能从光盘引导安装程序的硬件上引导安装程序, 也适用于其他类似的情况。 磁盘映像是一些装有原始的软盘文件内容的文件。 磁盘映像,比如 boot.img 则不能直接拷贝到软盘中。 一个特殊的程序负责向软盘中 安装原始模式写入磁盘映像文件 raw 。这是一个必须的步骤,因为这些映像 文件是一些原始的磁盘保存方式。所以需要把文件的数据 按扇区拷贝 放到软盘
问题内容: 我目前正在实施ping / pong缓冲方案,以安全地将文件写入磁盘。我在Linux / CentOS计算机上使用C ++ / Boost。现在,我面临的问题是强制将文件实际写入磁盘。不管文件系统的所有缓存策略(ext3 / ext4)/ SO自定义规则/ RAID控制器/硬盘控制器如何,都可以这样做吗? 最好使用普通的fread()/ fwrite(),c ++ ostream或bo
按照建议,我在我的中创建了一个文件 要能够运行。 当我运行,我得到以下输出(使用选项): 看起来该命令运行“成功”,但在我挂载的本地目录中找不到文件,即。然而,挂载必须工作,因为它成功地连接到数据库,即容器能够访问和读取。 首先,我认为我可能必须“告诉”Docker允许在我的磁盘上写入,但似乎应该支持这一点[从Docker Hub上的描述来看]: /liquibase/changelog卷还可用于
我正在处理使用File Vault 2加密的MacBook(Mac OS X 10.11.6)磁盘的比特流()图像。我没有任何密码、密码或恢复密钥来解锁驱动器,但我对解锁/解密驱动器不感兴趣。 我只需要提取与登录屏幕相关的所有可能信息。该信息应包括允许登录的用户名和密码建议(如有)。对于密码建议,我指的是如果您单击问号(?)时可用的建议在密码框的右侧。 以下是登录屏幕的示例: 登录屏幕示例 据我所
我有一个扩展名为 vmdk 的 vmware 磁盘映像文件 我正试着安装这个并探索所有的分区(包括隐藏的)。 我试图遵循几个指南,例如:http://forums.opensuse.org/showthread.php/469942-mounting-virtual-box-machine-images-host 我可以使用vdfuse挂载图像 在这之后,我可以看到一个分区和整个磁盘暴露出来 继续