在Windows开发中,可以使用*。ini文件来保存程序的状态或设置等数据,并且一般都提供了操作ini文件的API。但在Java中怎么实现类似的功能呢?比如,在程序中,我们需要保存一个窗口的位置,让程序在下次启动的时候,仍然保持在上一次关闭的时候的位置,或者程序需要将数据库连接的设置保存下来。
在前面一篇>中介绍了使用序列化的类来保存这些数据,本篇文章介绍使用Properties文件来保存。Properties文件的本质就是一个文本文件,文件中使用属性和值来保存数据,如:abc。name=Colin。使用Porperites文件来保存实际上就是创建一个Properites文件,在程序关闭的时候,将数据写入文件,再等程序启动的时候,从这个Properties文件中读出数据。
我们假设有一个对象frame,在启动的时候要从一个properties文件中读取数据,再根据读取的数据来设置其位置及大小,在frame关闭的时候将位置,大小等数据保存到properties文件中。当程序启动,创建frame的时候:try{ Properties property = new Properties(); property。
load(new FileInputStream("mysave。properties")); frame。setSize(property。getProperty("frame。height"),property。getProperty("frame。
width")); frame。setLocation(property。getProperty("frame。left"),property。getProperty("frame。top"));}当frame被关闭的时候,执行下面的程序:try{ Properties property = new Properties(); property。
setProperty("frame。height",frame。getHeight()); property。setProperty("frame。width",frame。getWidth()); property。setProperty("frame。
left",frame。getX()); property。setProperty("frame。top",frame。getY()); property。store(new FileOutputStream("mysave。properties"),"mysave。
properties");}mysave。properties是被保存的文件,可以另外指定其地址。
全部