Was ist das PROPERTIES-Dateiformat?
Dateien mit der .properties-Erweiterung werden von Java-Technologien verwendet, um Eigenschaften und konfigurierbare Anwendungsparameter zu speichern. Sie können auch Zeichenketten für die Internationalisierung und Lokalisierung enthalten, was sie zu einem Standardformat für i18n-Nachrichtenbundles in Java-Anwendungen und Frameworks wie Spring macht.
Jede Zeile in einer .properties-Datei enthält einen einzelnen Parameter. Jeder Parameter wird als Paar von Zeichenketten gespeichert - die erste enthält den Namen des Parameters (Schlüssel genannt) und die zweite seinen Wert. Schlüssel und Werte werden durch =, : oder Leerzeichen getrennt. Zeilen, die mit # oder ! beginnen, werden als Kommentare behandelt und vom Parser ignoriert. Ein abschließender Backslash (\) am Zeilenende setzt den Wert in der nächsten Zeile fort.
Standardmäßig sind .properties-Dateien in ISO-8859-1 (Latin-1) kodiert. Nicht-lateinische Zeichen müssen als \uXXXX-Unicode-Escape-Sequenzen geschrieben werden - anders als YAML-Dateien oder XML-Dateien, die nativ UTF-8 unterstützen. Java 9 führte Unterstützung für das Laden von .properties-Dateien in UTF-8 ein, wenn ein expliziter Zeichensatz angegeben wird.
Bearbeiten von .properties-Dateien
.properties-Dateien können mit jedem Texteditor frei bearbeitet werden. Darüber hinaus stehen auch fortgeschrittenere Werkzeuge zur Dateibearbeitung zur Verfügung, die mit zusätzlichen Funktionen ausgestattet sind, die reguläre Texteditoren nicht unterstützen. Die Verwendung dieser Werkzeuge ermöglicht:
- Datenvalidierung
- Erstellen neuer Schlüssel
- Synchronisierung von Schlüsselnamen über Locale-Dateien hinweg
- automatische, bidirektionale Konvertierung von Nicht-ASCII-Symbolen zu und von
\uXXXX-Escapes - Integration mit Eclipse
Weitere Informationen
.properties-Dateien werden in Java-Anwendungen über die java.util.Properties-Klasse aufgerufen. Sie werden typischerweise als Classpath-Ressourcen in JAR- oder WAR-Archiven gebündelt und zur Laufzeit geladen - es gibt kein festes Standardverzeichnis für sie. Das .ini-Format erfüllt eine ähnliche Rolle in Nicht-Java-Umgebungen, während .env-Dateien häufig in modernen containerisierten Deployments verwendet werden.
Sicherheit
RISIKO: LOWEine .properties-Datei ist reiner Text und kann keinen Code ausführen, daher ist das Öffnen sicher. Zwei reale Risiken: (1) Sie enthalten häufig Geheimnisse - Datenbankpasswörter, API-Schlüssel, Verbindungszeichenketten - also fügen Sie sie nicht in nicht vertrauenswürdige Online-Werkzeuge ein und committen Sie sie nicht in öffentliche Repositories. (2) Bearbeitungsrisiko: Ein Tippfehler, eine falsche Kodierung (UTF-8 speichern, wo ISO-8859-1 erwartet wird, kann Akzente verstümmeln) oder ein verirrtes Zeichen kann den Start der Java-Anwendung verhindern. Sichern Sie immer das Original, bevor Sie einen Wert ändern.
Formatdetails
kurz gefasstProgramme zum Öffnen von PROPERTIES-Dateien
Technische Details
technische Spezifikation| Standardkodierung | ISO-8859-1 (Latin-1) |
| UTF-8-Unterstützung | Ab Java 9+ über explizites Charset-Argument an Properties.load() verfügbar |
| Nicht-ASCII-Zeichen | Müssen bei ISO-8859-1-Kodierung als \uXXXX-Unicode-Escape-Sequenzen dargestellt werden |
| Schlüssel-Wert-Trennzeichen | =, : oder nicht-escapteter Leerraum - das erste Vorkommen trennt Schlüssel von Wert |
| Kommentarsyntax | # oder ! am Zeilenanfang |
| Zeilenfortsetzung | Ein abschließendes \ verbindet die nächste Zeile mit dem aktuellen Wert; führender Leerraum in der Fortsetzungszeile wird entfernt |
| Leerraum-Kürzung | Führender Leerraum vor Schlüsseln und zwischen Trennzeichen und Wert wird automatisch entfernt |
| Verhalten bei doppelten Schlüsseln | Vom Parser erlaubt; die letzte Definition überschreibt stillschweigend frühere |
| Java-API-Klasse | java.util.Properties |
| MIME-Typ | text/plain |
| Magic Bytes / Signatur | Keine - reiner Text ohne binären Header; identifiziert durch Dateiendung und Schlüssel=Wert-Zeilenstruktur |
| Unterstützte Escape-Sequenzen | \n, \t, \r, \\, \ (escaped Leerzeichen in Schlüsseln/Werten), \uXXXX |
| Entwickler / Betreuer | Sun Microsystems / Oracle (Teil der Java-Plattform) |
| Übliche Bereitstellung | Als Classpath-Ressourcen in JAR- oder WAR-Archiven gebündelt; zur Laufzeit über getResourceAsStream() geladen |
| Verbreitung im Ökosystem | Verwendet von Java SE, Spring Framework, Android (Legacy), Apache Ant, Maven und vielen Drittanbieter-Werkzeugen |
| Veröffentlicht | 1996 (Java 1.0, java.util.Properties) |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | docs.oracle.com |
PROPERTIES-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu PROPERTIES-Dateien.