>백엔드 개발 >PHP 튜토리얼 >.ini 형식의 프로그램 구성 파일에 사용됩니다.

.ini 형식의 프로그램 구성 파일에 사용됩니다.

WBOY
WBOY원래의
2016-07-25 09:08:11928검색
파일을 읽고 키-값 쌍을 변경하는 방법을 인터넷에서 찾았습니다. ~                                                                           ~ ~ ~            
  1. package com.sdut.edu.tools;
  2. import java.io.BufferedReader;
  3. import java.io.BufferedWriter;
  4. import java. io.FileReader;
  5. java.io.FileWriter 가져오기;
  6. java.io.IOException 가져오기;
  7. java.util.regex.Matcher 가져오기;
  8. java.util.regex.Pattern 가져오기;
  9. 공개 클래스 TestIni {
  10.        
  11.         private static String file="/sdcard/test.ini";
  12.        
  13.         public static String getProfileString(
  14.                                                문자열 섹션,
  15.                       문자열 변수,
  16.                         String defaultValue)
  17.                         IOException 발생 {
  18.                strLine, value = "";
  19.                 BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
  20.                 부울 isInSection = false;
  21.                 시도 {
  22.                         while ((strLine = bufferedReader.readLine()) != null) {
  23.                               strLine = strLine .trim();
  24.                                 //strLine = strLine.split( "[;]")[0];
  25.                                 패턴 p;
  26.                               일치자 m;
  27.                                p = Pattern.compile("\[" 섹션 "\]");
  28.                                 m = p.matcher ((strLine));
  29.                                 if (m.matches()) {
  30.                                       p = Pattern.compile("\[" section "\]");
  31.                                        m = p.matcher(strLine); >                                    } else {
  32.                                             isInSection = false;
  33.                                      }
  34.                                 }
  35.                               if (isInSection == true) {
  36.                                     strLine = strLine.trim();
  37.                                        String[] strArray = strLine.split("=");
  38.                                         if (strArray.length == 1 ) {
  39.                                                 value = strArray[0].trim();
  40.                                                if (value.equalsIgnoreCase(변수)) {
  41.                                                     value = "";
  42.                                                    break;
  43. //                                                        반환 값; >                                              value = strArray[0].trim();
  44.                                             if (value.equalsIgnoreCase (변수)) {
  45.                                                         값 = strArray[1].trim();
  46.                                                       break;
  47. //                                                       반환값;
  48.                                               }
  49.                                       } else if ( strArray.length > 2) {
  50.                                                 value = strArray[0].trim();
  51.                                              if (value.equalsIgnoreCase(변수)) {
  52.                                                         value = strLine.substring(strLine.indexOf("=") 1). Trim();
  53.                                                       break;
  54. //                                                   반환값;
  55.                                                 }
  56.                                         }
  57.                               }
  58.                               System.out.println("");
  59.                         }
  60.                 } 드디어 {
  61.                         bufferedReader.close();
  62.                 }
  63.                 System.out.println(" value=====" 값);
  64.                 반환 값;
  65.         }
  66.        
  67.         public static boolean setProfileString(
  68.                         문자열 섹션, 🎜>                        문자열 변수,
  69.                         문자열 value)
  70.                         IOException 발생 {
  71.                 String fileContent, allLine,strLine, newLine, commentStr;
  72.                 String getValue;
  73.                BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
  74.                 boolean isInSection = false;
  75.                 fileContent = "";
  76.                 시도 {
  77.                 while ((allLine = bufferedReader.readLine()) != null) {
  78.                 allLine = allLine .trim();
  79. // System.out.println("allLine == " allLine);
  80.                 strLine = allLine;
  81.                 패턴 p;
  82.                 일치자 m;
  83.                 p = Pattern.compile("\[ " 섹션 "\] ");
  84.                 m = p.matcher((strLine));
  85.                 if (m.matches()) {
  86. //                System.out.println(" ");
  87.                p = 패턴 .compile("\[" 섹션 "\]");
  88.                 m = p.matcher(strLine);
  89.                 if (m.matches()) {
  90. //                System.out.println(" true ");
  91.                 isInSection = true;
  92.                 } else {
  93.                 isInSection = false;
  94. //                System.out.println(" ");
  95.                 }
  96.                 }
  97. if (isInSection == true) {
  98.                 strLine = strLine.trim();
  99.                 String[] strArray = strLine.split("=");
  100.                 getValue = strArray[0].trim();
  101.                 if (getValue.equalsIgnoreCase(변수)) {
  102.                 // newLine = getValue " = " value " "RemarkStr;
  103.                 newLine = getValue " = " value " ";
  104.                fileContent = newLine "rn ";
  105.                 while ((allLine = bufferedReader.readLine()) != null) {
  106.                 fileContent = allLine "rn";
  107.                 }
  108.                 bufferedReader.close();
  109.                 BufferedWriter bufferedWriter =
  110.                 new BufferedWriter(new FileWriter(file, false));
  111.                bufferedWriter.write(fileContent);
  112.                 bufferedWriter.flush();                }
  113.                 }catch(IOException ex){
  114.                 throw ex;
  115.                 } 드디어 {
  116.                 bufferedReader.close();
  117.                 }
  118.                 return false;
  119. }
  120.       
  121. }
  122. 复代码
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:소켓 사용 관련다음 기사:소켓 사용 관련