国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

保存Java程序狀態(tài)及設(shè)置Properties文件

2019-11-17 04:35:10
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
在Windows開(kāi)發(fā)中,可以使用*.ini文件來(lái)保存程序的狀態(tài)或設(shè)置等數(shù)據(jù),并且一般都提供了操作ini文件的API。但在java中怎么實(shí)現(xiàn)類似的功能呢?比如,在程序中,我們需要保存一個(gè)窗口的位置,讓程序在下次啟動(dòng)的時(shí)候,仍然保持在上一次關(guān)閉的時(shí)候的位置,或者程序需要將數(shù)據(jù)庫(kù)連接的設(shè)置保存下來(lái)。

在前面一篇<<保存Java程序狀態(tài)及設(shè)置之對(duì)象序列化>>中介紹了使用序列化的類來(lái)保存這些數(shù)據(jù),本篇文章介紹使用PRoperties文件來(lái)保存.Properties文件的本質(zhì)就是一個(gè)文本文件,文件中使用屬性和值來(lái)保存數(shù)據(jù),如:abc.name=Colin。使用Porperites文件來(lái)保存實(shí)際上就是創(chuàng)建一個(gè)Properites文件,在程序關(guān)閉的時(shí)候,將數(shù)據(jù)寫(xiě)入文件,再等程序啟動(dòng)的時(shí)候,從這個(gè)Properties文件中讀出數(shù)據(jù)。

我們假設(shè)有一個(gè)對(duì)象frame,在啟動(dòng)的時(shí)候要從一個(gè)properties文件中讀取數(shù)據(jù),再根據(jù)讀取的數(shù)據(jù)來(lái)設(shè)置其位置及大小,在frame關(guān)閉的時(shí)候?qū)⑽恢茫笮〉葦?shù)據(jù)保存到properties文件中。

當(dāng)程序啟動(dòng),創(chuàng)建frame的時(shí)候:

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"));

}

當(dāng)frame被關(guān)閉的時(shí)候,執(zhí)行下面的程序:

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


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 都昌县| 化州市| 石门县| 黎城县| 海晏县| 双桥区| 延寿县| 蓬莱市| 西贡区| 海门市| 德阳市| 肥乡县| 滁州市| 海安县| 乌鲁木齐市| 南漳县| 湖北省| 襄城县| 阳泉市| 山丹县| 富裕县| 泌阳县| 镇江市| 邻水| 涪陵区| 托克逊县| 桑植县| 商城县| 大冶市| 顺昌县| 马鞍山市| 新乡市| 新郑市| 阿勒泰市| 贵南县| 彩票| 白水县| 宜良县| 赤水市| 上思县| 昆明市|