Heim  >  Artikel  >  Java  >  Lesen und schreiben Sie INI-Konfigurationsdateien mit Java

Lesen und schreiben Sie INI-Konfigurationsdateien mit Java

黄舟
黄舟Original
2016-12-17 11:04:161285Durchsuche


In Java gibt es Konfigurationsdateien im Allgemeinen in zwei Formen: XML-Dateien oder PRperty-Dateien. Die meisten Menschen sind jedoch an die Verwendung von INI-Dateien gewöhnt, und die Abschnitts- und Anmerkungsfunktionen von INI-Dateien sind einfacher zu verstehen und zu verwenden als XML.

In der vc-Klassenbibliothek gibt es Standardfunktionen zum Lesen und Schreiben von INI-Dateien. In Dephi oder anderen Sprachen können Sie auch Windows-API-Funktionen verwenden, um INI-Dateien zu lesen und zu schreiben. Aber es scheint in Java keine vorgefertigten Klassen und Methoden zu geben. Obwohl Java die Windows-API durch das Laden von DLL-Dateien aufrufen kann, fühlt es sich immer nicht authentisch genug an.

Also habe ich als Referenz eine Klasse zum Lesen und Schreiben von INI-Konfigurationsdateien geschrieben.

Paket mytools;

import java.io.BufferedWriter;
import java.io.FileReader; FileWriter;
import java.io.IOException;
import java.util.regex.Matcher;

/**
* Dies ist eine Konfigurationsdatei-Operationsklasse, die zum Lesen und Festlegen von INI-Konfigurationsdateien verwendet wird
* @author nach Monat
* @Version 2004-08-18
*/
public final class ConfigurationFile {
/**
* Lesen Sie den Wert der Variablen aus der INI-Konfigurationsdatei
* @param-Datei Der Pfad zur Konfigurationsdatei
* @param-Abschnitt Der Name des Abschnitts, in dem sich die abzurufende Variable befindet
* @param variable Die abzurufende Variable Name
* @param defaultValue Der Standardwert, wenn der Variablenname nicht existiert
* @return Der Wert der Variablen
* @throws IOException Löst io-Ausnahmen aus kann bei Dateivorgängen
auftreten*/
public static String getProfileString(
String file,
String section,
String variable,
String defaultValue )
wirft IOException {
String strLine, value = "";
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
boolean isInSection = false; while ((strLine = bufferedReader.readLine()) != null) {
strLine = strLine.trim();
strLine = strLine.split("[;]")[0]; p;
Matcher m;
p = Pattern.compile("file://[//s*.*//s*/]"
m = p.matcher((strLine ));
if (m.matches()) {
p = Pattern.compile("file://[//s*" + section + "file://s*//]") ;
m = p.matcher(strLine);
if (m.matches()) {
isInSection = true; 🎜>}
if (isInSection == true) {
strLine = strLine.trim();
String[] strArray = strLine.split("=");
if (strArray.length == 1) {
value = strArray[0].trim();
if (value.equalsIgnoreCase(variable)) {
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(); value.equalsIgnoreCase(variable)) {
value = strLine.substring(strLine.indexOf("=") + 1).trim();
return value;

Das Obige wird gelesen mit Java Schreiben Sie den Inhalt der INI-Konfigurationsdatei. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn).



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn