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 (m.sbmmt.com).