System-Properties lesen
How To ...
Wie greift man auf System-Properties zu?
Hintergründe
Die Klasse java.util.Properties ist eine Unterklasse von java.util.Hashtable, die eine Menge von Attribut-Wert-Paaren (oder Schlüssel/Wert, beides Strings) darstellt. In den System-Properties werden viele Konfigurationsdaten eines Java-Systems, z.B. Heimat-Verzeichnis des Benutzers, Java-Version, Betriebssystem etc. dargestellt.
So geht's
Auf ein einzelnes Property wird mit der Methode getProperty() der Klasse java.lang.System zugegriffen. Dazu muss der Property-Name natürlich bekannt sein:
String home = System.getProperty("user.home");
System.out.println("Property 'user.home': " +home);
Mit der Methode getProperties() (ebenfalls aus System) erhält man alle Properties des Systems und kann über diese Iterieren. Properties gibt es bereits seit Java 1.0, so dass mit einer Enumeration über die einzelnen Elemente iteriert werden muss:
Properties systemproperties = System.getProperties();
for (Enumeration e = systemproperties.propertyNames(); e.hasMoreElements(); ) {
String prop = (String) e.nextElement();
System.out.println("Property: " + prop + " , Wert: " + systemproperties.getProperty(prop));
}
Einfacher geht es allerdings mit der Methode list(), die einen Output-Stream als Parameter erwartet:
Properties systemproperties = System.getProperties(); systemproperties.list(System.out);
