| 導購 | 订阅 | 在线投稿
分享
 
 
 

保存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- 王朝網路 版權所有