欢迎来到天天文库
浏览记录
ID:11022162
大小:37.50 KB
页数:13页
时间:2018-07-09
《java中读写配置文件》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JAVA中读写配置文件2007-12-22java中读写属性文件下面的文章来自CSDNhyde82的专栏,因为很实用,所以就摘下来放在此处,具体网址忘记啦.无论是有图形化的选项配置对话框,或者是系统提供的注册表,文本形式的本地配置文件依然是最牢靠、应用最广泛的配置信息保存形式。配置信息的一般模式就是一个配置项对应一个值,前者一般是个字符串,后者可能是数字或者字符串或者别的什么。在传统win32编程中有系统提供的api供我们解读.ini文件,后来也有操作注册表的封装好的api,在.net中更是有解读XML形式.config文件的现成方法。在Java中,对配置文
2、件的使用进行封装也是十分有意义的。 封装应该达到这样的效果:应用只管从配置信息进行按名读取值、设置值、保存等操作,而不需要关心具体以什么文件格式保存、如何解析。文件格式(纯文本?XML?数据库?)、IO方式(本地文件?远程文件?控制台流?)在封装类内部的变更,都不会影响应用对配置信息的感知。 从键名-值的对应关系以及文件的存取,我们最容易想到的就是java.util.Properties对象,他是HashTable的子类,保存的就是很多组键名-值的对应二原组,并提供快速的查询和直接的从文件读取、保存为文件的方法。具体请参考相关文档,我们直接看程序。 首
3、先自定义一个异常://ConfigurationException.javapackageconfiguration;publicclassConfigurationExceptionextendsException{publicConfigurationException(){}publicConfigurationException(Stringmsg){super(msg);}} 然后是我们的封装类://Configuration.javapackageconfiguration;importjava.io.*;importjava.util.*;i
4、mportconfiguration.*;publicclassConfiguration{privatePropertiesconfig=newProperties();//记录配置项privateStringfn=null;//记录配置文件名//此构造方法用于新建配置文件publicConfiguration(){}//从指定文件名读入配置信息publicConfiguration(StringfileName)throwsConfigurationException{try{FileInputStreamfin=newFileInputStream(f
5、ileName);config.load(fin);//载入文件fin.close();}catch(IOExceptionex){thrownewConfigurationException("无法读取指定的配置文件:"+fileName);}fn=fileName;}//指定配置项名称,返回配置值publicStringgetValue(StringitemName){returnconfig.getProperty(itemName);}//指定配置项名称和默认值,返回配置值publicStringgetValue(StringitemName,Str
6、ingdefaultValue){returnconfig.getProperty(itemName,defaultValue);}//设置配置项名称及其值publicvoidsetValue(StringitemName,Stringvalue){config.setProperty(itemName,value);return;}//保存配置文件,指定文件名和抬头描述publicvoidsaveFile(StringfileName,Stringdescription)throwsConfigurationException{try{FileOutput
7、Streamfout=newFileOutputStream(fileName);config.store(fout,description);//保存文件fout.close();}catch(IOExeptionex){thrownewConfigurationException("无法保存指定的配置文件:"+fileName);}}//保存配置文件,指定文件名publicvoidsaveFile(StringfileName)throwsConfigurationException{saveFile(fileName,"");}//保存配置文件,采用原
8、文件名publicvoidsaveFile()thr
此文档下载收益归作者所有