.ini 형식의 프로그램 구성 파일에 사용됩니다.
풀어 주다: 2016-07-25 09:08:11
파일을 읽고 키-값 쌍을 변경하는 방법을 인터넷에서 찾았습니다. ~
~
~
~
- package com.sdut.edu.tools;
-
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java. io.FileReader;
- java.io.FileWriter 가져오기;
- java.io.IOException 가져오기;
- java.util.regex.Matcher 가져오기;
- java.util.regex.Pattern 가져오기;
-
- 공개 클래스 TestIni {
-
- private static String file="/sdcard/test.ini";
-
- public static String getProfileString(
- 문자열 섹션,
- 문자열 변수,
- String defaultValue)
- IOException 발생 {
-
- strLine, value = "";
- BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
- 부울 isInSection = false;
- 시도 {
- while ((strLine = bufferedReader.readLine()) != null) {
- strLine = strLine .trim();
- //strLine = strLine.split( "[;]")[0];
- 패턴 p;
- 일치자 m;
- p = Pattern.compile("\[" 섹션 "\]");
- m = p.matcher ((strLine));
- if (m.matches()) {
- p = Pattern.compile("\[" section "\]");
- m = p.matcher(strLine); > } else {
- isInSection = false;
- }
- }
- if (isInSection == true) {
- strLine = strLine.trim();
- String[] strArray = strLine.split("=");
- if (strArray.length == 1 ) {
- value = strArray[0].trim();
- if (value.equalsIgnoreCase(변수)) {
- value = "";
- break;
- // 반환 값; > value = strArray[0].trim();
- if (value.equalsIgnoreCase (변수)) {
- 값 = strArray[1].trim();
- break;
- // 반환값;
- }
- } else if ( strArray.length > 2) {
- value = strArray[0].trim();
- if (value.equalsIgnoreCase(변수)) {
- value = strLine.substring(strLine.indexOf("=") 1). Trim();
- break;
- // 반환값;
- }
- }
- }
- System.out.println("");
- }
- } 드디어 {
- bufferedReader.close();
- }
- System.out.println(" value=====" 값);
- 반환 값;
- }
-
-
- public static boolean setProfileString(
- 문자열 섹션, 🎜> 문자열 변수,
- 문자열 value)
- IOException 발생 {
- String fileContent, allLine,strLine, newLine, commentStr;
- String getValue;
- BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
- boolean isInSection = false;
- fileContent = "";
- 시도 {
- while ((allLine = bufferedReader.readLine()) != null) {
- allLine = allLine .trim();
- // System.out.println("allLine == " allLine);
- strLine = allLine;
- 패턴 p;
- 일치자 m;
- p = Pattern.compile("\[ " 섹션 "\] ");
- m = p.matcher((strLine));
- if (m.matches()) {
- // System.out.println(" ");
- p = 패턴 .compile("\[" 섹션 "\]");
- m = p.matcher(strLine);
- if (m.matches()) {
- // System.out.println(" true ");
- isInSection = true;
- } else {
- isInSection = false;
- // System.out.println(" ");
- }
- }
- if (isInSection == true) {
- strLine = strLine.trim();
- String[] strArray = strLine.split("=");
- getValue = strArray[0].trim();
- if (getValue.equalsIgnoreCase(변수)) {
- // newLine = getValue " = " value " "RemarkStr;
- newLine = getValue " = " value " ";
- fileContent = newLine "rn ";
- while ((allLine = bufferedReader.readLine()) != null) {
- fileContent = allLine "rn";
- }
- bufferedReader.close();
- BufferedWriter bufferedWriter =
- new BufferedWriter(new FileWriter(file, false));
- bufferedWriter.write(fileContent);
- bufferedWriter.flush(); }
- }catch(IOException ex){
- throw ex;
- } 드디어 {
- bufferedReader.close();
- }
- return false;
- }
-
- }
-
-
-
- 复代码
-
-
|
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31