| 订阅 | 在线投稿
分享
 
 
 

保存Java程序状态及设置Properties文件

来源:互联网  宽屏版  评论
2008-06-01 03:09:15

在Windows开发中,可以使用*.ini文件来保存程序的状态或设置等数据,并且一般都提供了操作ini文件的API。但在Java中怎么实现类似的功能呢?比如,在程序中,我们需要保存一个窗口的位置,让程序在下次启动的时候,仍然保持在上一次关闭的时候的位置,或者程序需要将数据库连接的设置保存下来。

在前面一篇<<保存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是被保存的文件,可以另外指定其地址

本文根据作者自己的心得所写,难免有疏忽遗漏,欢迎对文章进行批评指正。

 
在Windows开发中,可以使用*.ini文件来保存程序的状态或设置等数据,并且一般都提供了操作ini文件的API。但在Java中怎么实现类似的功能呢?比如,在程序中,我们需要保存一个窗口的位置,让程序在下次启动的时候,仍然保持在上一次关闭的时候的位置,或者程序需要将数据库连接的设置保存下来。 在前面一篇<<保存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是被保存的文件,可以另外指定其地址 本文根据作者自己的心得所写,难免有疏忽遗漏,欢迎对文章进行批评指正。
󰈣󰈤
 
 
 
>>返回首页<<
 
 热帖排行
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有