您好,登錄后才能下訂單哦!
代碼
package?org.fh.util;import?java.io.BufferedReader;import?java.io.BufferedWriter;import?java.io.FileReader;import?java.io.FileWriter;import?java.io.IOException;import?java.util.regex.Matcher;import?java.util.regex.Pattern;/** ?*?說明:ini文件讀寫操作工具類 ?*??官網:www.1b23.com ?*/public?class?IniFileUtil?{ /** ?*?從ini配置文件中讀取變量的值 ?*?@param?file?????????配置文件的路徑 ?*?@param?section??????要獲取的變量所在段名稱 ?*?@param?variable?????要獲取的變量名稱 ?*?@param?defaultValue?變量名稱不存在時的默認值 ?*?@return?變量的值 ?*?@throws?IOException?拋出文件操作可能出現的io異常 ?*/ public?static?String?readCfgValue(String?file,?String?section,?String?variable,?String?defaultValue) throws?IOException?{ String?strLine,?value?=?""; BufferedReader?bufferedReader?=?new?BufferedReader(new?FileReader(file)); boolean?isInSection?=?false; try?{ while?((strLine?=?bufferedReader.readLine())?!=?null)?{ strLine?=?strLine.trim(); strLine?=?strLine.split("[;]")[0]; Pattern?p; Matcher?m; p?=?Pattern.compile("\\[\\w+]");//?Pattern.compile("file://[//s*.*//s*//]"); m?=?p.matcher((strLine)); if?(m.matches())?{ p?=?Pattern.compile("\\["?+?section?+?"\\]");//?Pattern.compile("file://[//s*"?+?section?+ //?"file://s*//]"); m?=?p.matcher(strLine); if?(m.matches())?{ isInSection?=?true; }?else?{ isInSection?=?false; } } if?(isInSection?==?true)?{ strLine?=?strLine.trim(); String[]?strArray?=?strLine.split("="); if?(strArray.length?==?1)?{ value?=?strArray[0].trim(); if?(value.equalsIgnoreCase(variable))?{ value?=?""; return?value; } }?else?if?(strArray.length?==?2)?{ value?=?strArray[0].trim(); if?(value.equalsIgnoreCase(variable))?{ value?=?strArray[1].trim(); return?value; } }?else?if?(strArray.length?>?2)?{ value?=?strArray[0].trim(); if?(value.equalsIgnoreCase(variable))?{ value?=?strLine.substring(strLine.indexOf("=")?+?1).trim(); return?value; } } } } }?finally?{ bufferedReader.close(); } return?defaultValue; } /** ?*?修改ini配置文件中變量的值 ?*?@param?file?????配置文件的路徑 ?*?@param?section??要修改的變量所在段名稱 ?*?@param?variable?要修改的變量名稱 ?*?@param?value????變量的新值 ?*?@throws?IOException?拋出文件操作可能出現的io異常 ?*/ public?static?boolean?writeCfgValue(String?file,?String?section,?String?variable,?String?value)?throws?IOException?{ String?fileContent,?allLine,?strLine,?newLine; String?getValue?=?null; BufferedReader?bufferedReader?=?new?BufferedReader(new?FileReader(file)); boolean?isInSection?=?false; boolean?canAdd?=?true; fileContent?=?""; try?{ while?((allLine?=?bufferedReader.readLine())?!=?null)?{ allLine?=?allLine.trim(); strLine?=?allLine.split(";")[0]; Pattern?p; Matcher?m; p?=?Pattern.compile("\\[\\w+]"); m?=?p.matcher((strLine)); if?(m.matches())?{ p?=?Pattern.compile("\\["?+?section?+?"\\]"); m?=?p.matcher(strLine); if?(m.matches())?{ isInSection?=?true; }?else?{ isInSection?=?false; } } if?(isInSection?==?true)?{ strLine?=?strLine.trim(); String[]?strArray?=?strLine.split("="); getValue?=?strArray[0].trim(); if?(getValue.equalsIgnoreCase(variable))?{ newLine?=?getValue?+?"="?+?value; fileContent?+=?newLine; while?((allLine?=?bufferedReader.readLine())?!=?null)?{ fileContent?+=?"\r\n"?+?allLine; } bufferedReader.close(); canAdd?=?false; BufferedWriter?bufferedWriter?=?new?BufferedWriter(new?FileWriter(file,?false)); bufferedWriter.write(fileContent); bufferedWriter.flush(); bufferedWriter.close(); return?true; } } fileContent?+=?allLine?+?"\r\n"; } if?(canAdd)?{ String?str?=?variable?+?"="?+?value; fileContent?+=?str?+?"\r\n"; BufferedWriter?bufferedWriter?=?new?BufferedWriter(new?FileWriter(file,?false)); bufferedWriter.write(fileContent); bufferedWriter.flush(); bufferedWriter.close(); } }?catch?(IOException?ex)?{ throw?ex; }?finally?{ bufferedReader.close(); } return?false; } public?static?void?main(String[]?args)?{ try?{ /*;文件事例 [Client] ;客戶端版本號 version=0001 ;設備號 devNum=6405*/ String?value?=?IniFileUtil.readCfgValue("L:/a.ini",?"Client",?"devNum",?"1"); System.out.println(value); }?catch?(IOException?e)?{ e.printStackTrace(); } } }
ini 配置文件
;系統設置[SysSet1];系統名稱sysName=FH;帶分頁的列表頁面,每頁條數showCount=10;在線管理IPonlineIp=127.0.0.1;在線管理端口onlinePort=8869;信息提示音fhsmsSound=m1;郵箱服務器SMTPSMTP=smtp.126.com;郵箱服務器端口PORT=25;郵箱服務器郵箱EMAIL=wwww@126.com;郵箱服務器密碼PAW=234561;即時聊天IPimIp=127.0.0.1;即時聊天端口imPort=8879
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。