java培训_博益教育 java培训就业班_博益教育

                                          当前位置:博益教育 > java项目 >

                                          java读写Properties属性文件公用方法
                                          栏目分类:java项目   发布日期:2025-01-27   浏览次数:1679

                                          Java中有个较为紧张的类Properties(Java.util.Properties),重要用于读与Java的装备文献,种种讲话皆有本身所扶助的设置文献,摆设文献中许多变量是常常转变的,如许干也是为了简单用户,让用户或许离开法式自身来修正相干的变量建树。像Python援助的摆设文献是.ini文献,一样,它也有本身读与装备文献的类ConfigParse,简单步骤员或者用户经由过程该类的办法去修正.ini摆设文献。正在Java中,其设置文献常为.properties文献,花样为文原文献,文献的内乱容的花样是“键=值”的花样,文原诠释疑息能够用"#"去说明。

                                          它供给了几个重要的办法:

                                          1. getProperty ( String key),用指定的键正在此属性列表中探寻属性。也便是经由过程参数 key ,获得 key 所对于应的 value。

                                          2. load ( InputStream inStream),从输出淌中读与属性列表(键战元素对于)。经由过程对于指定的文献(例如道下面的 test.properties 文献)停止拆载去获得该文献中的全部键 - 值对于。以供 getProperty ( String key) 去征采。

                                          3. setProperty ( String key, String value) ,移用 Hashtable 的办法 put 。他经由过程挪用基类的put办法去扶植 键 - 值对于。

                                          4. store ( OutputStream out, String comments),以合宜应用 load 办法添载到 Properties 表中的花样,将此 Properties 表中的属性列表(键战元素对于)写进输入淌。取 load 办法差异,该办法将键 - 值对于写进到指定的文献中来。

                                          5. clear (),肃清全部拆载的 键 - 值对于。该办法正在基类中供给。

                                          以下示例代码供应了1套读写装备文献的公用真用办法,能够凭据本身的名目停止引进:

                                          packagecom.javacui.lucene.jdbc;importjava.io.BufferedInputStream;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.InputStream;importjava.io.OutputStream;importjava.util.Enumeration;importjava.util.Properties;importorg.apache.log4j.Logger;publicclassPropertieUtil{privatestaticLoggerlogger=Logger.getLogger(PropertieUtil.class);privatePropertieUtil(){}/***读与设备文献某属性*/publicstaticStringreadValue(StringfilePath,Stringkey){Propertiesprops=newProperties();try{//注重途径以/最先,不则处置if(!filePath.startsWith("/"))filePath="/"+filePath;InputStreamin=PropertieUtil.class.getResourceAsStream(filePath);props.load(in);Stringvalue=props.getProperty(key);returnvalue;}catch(Exceptione){logger.error(e);returnnull;}}/***挨印摆设文献统统内乱容(filePath,装备文献实,要是有途径,props/test.properties)*/publicstaticvoidreadProperties(StringfilePath){Propertiesprops=newProperties();try{//注重途径以/最先,不则处置if(!filePath.startsWith("/"))filePath="/"+filePath;InputStreamin=PropertieUtil.class.getResourceAsStream(filePath);props.load(in);Enumeration<?>en=props.propertyNames();//遍历挨印while(en.hasMoreElements()){Stringkey=(String)en.nextElement();StringProperty=props.getProperty(key);logger.info(key+":"+Property);}}catch(Exceptione){logger.error(e);}}/***将值写进设置文献*/publicstaticvoidwriteProperties(StringfileName,StringparameterName,StringparameterValue)throwsException{//当地尝试出格注重,倘若是maven名目,请到\target目次停检查文献,而没有是源代码停//注重途径没有能添/了,添了则移撤除if(fileName.startsWith("/"))fileName.substring(1);StringfilePath=PropertieUtil.class.getResource("/").getPath()+fileName;//获得建设文献Propertiespps=newProperties();InputStreamin=newBufferedInputStream(newFileInputStream(filePath));pps.load(in);in.close();OutputStreamout=newFileOutputStream(filePath);//建立摆设称号战值pps.setProperty(parameterName,parameterValue);//comments即是装备文献的诠释pps.store(out,"Update"+parameterName+"name");out.flush();out.close();}publicstaticvoidmain(String[]args)throwsException{readProperties("jdbc.properties");//logger.info(readValue("jdbc.properties","JAVABLOG_WRITE_URL"));//writeProperties("test.properties","test","test");}}

                                          出格推举:

                                          对于读与Src停设置文献的谁人传闻

                                          http://www.javacui.com/java/35.html

                                          写进后的摆设文献:

                                          #Updatetestname#FriMar2513:01:32CST2016test=test

                                          内地尝试出格注重,借使是maven名目,请到\target目次停检查文献,而没有是源代码停。

                                          推举您浏览更多相关于“ 装备文献properties ”的作品

                                          
                                          Copyright © 2024-2026  java培训_博益教育 java培训就业班_博益教育   http://www.taigangzhonglian.com  .All Rights Reserved   网站地图  无
                                          博益教育 java项目 java热点 联系我们