Les informations de votre système sont effectivement concervées dans un objet Properties renvoyé par la méthode statique getProperties() de la classe System. Pour
accéder à une seule clé, vous pouvez alors faire appel à la méthode getProperty(clé)de cette même classe.
Le tableau suivant résume les propriétés système obligatoirement définies dans tout environnement Java :
Propriétés système Signification
java.vendor
java.vendor.url
java.version
java.home
java.class.version
java.class.path
os.name
os.arch
os.version
file.separator
path.separator
line.separator
user.name
user.home
user.dir
Chaîne désignant le concepteur
URL du concepteur
Version Java
Répertoire d'installation de Java
Version des classes Java
Chemin des classes
Nom du système d'exploitation
Architecture du système d'exploitation
Version du système d'exploitation
Séparateur de fichiers (comme / ou \ )
Séparateur de chemin (comme : ou ; )
Séparateur de ligne (comme \n ou \r\n )
Nom de compte utilisateur
Répertoire personnel de l'utilisateur
Répertoire courant
Votre application peut également définir ses propres propriétés système à l'aide de la méthode statique setProperty() de la classe System.
.
Voici un exemple de code très simple qui recense à l'écran l'ensemble des propriétés du système :
import java.io.IOException;
import java.util.Properties;
public class Principal {
public static void main(String[] args) throws IOException {
Properties propriétés = System.getProperties();
propriétés.store(System.out, "Propriétés du système");
}
}
Et voici le résultat :
#Propriétés du système
#Mon Sep 25 16:44:44 CEST 2006
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
sun.boot.library.path=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\bin
java.vm.version=1.5.0_05-b05
java.vm.vendor=Sun Microsystems Inc.
java.vendor.url=http\://java.sun.com/
path.separator=;
java.vm.name=Java HotSpot(TM) Client VM
file.encoding.pkg=sun.io
user.country=FR
sun.os.patch.level=Service Pack 2
java.vm.specification.name=Java Virtual Machine Specification
user.dir=L\:\\BTS IRIS\\TP Java\\Syst\u00E8me
java.runtime.version=1.5.0_05-b05
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\lib\\endorsed
os.arch=x86
java.io.tmpdir=C\:\\DOCUME~1\\HP_PRO~1\\LOCALS~1\\Temp\\
line.separator=\r\n
java.vm.specification.vendor=Sun Microsystems Inc.
user.variant=
os.name=Windows XP
sun.jnu.encoding=Cp1252
java.library.path=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\bin;.;C\:\\WINDOWS\\system32;
C\:\\WINDOWS;C\:\\WINDOWS\\System32\\Wbem;c\:\\Python22;
java.specification.name=Java Platform API Specification
java.class.version=49.0
sun.management.compiler=HotSpot Client Compiler
os.version=5.1
user.home=C\:\\Documents and Settings\\HP_Propri\u00E9taire
user.timezone=Europe/Paris
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=Cp1252
java.specification.version=1.5
java.class.path=L\:\\BTS IRIS\\TP Java\\Syst\u00E8me\\build\\classes
user.name=HP_Propri\u00E9taire
java.vm.specification.version=1.0
java.home=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre
sun.arch.data.model=32
user.language=fr
java.specification.vendor=Sun Microsystems Inc.
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode
java.version=1.5.0_05
java.ext.dirs=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\lib\\ext
sun.boot.class.path=C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\lib\\rt.jar;C\:\\Program Files\\Java\\jdk1.5.0_
05\\jre\\lib\\i18n.jar;C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\lib\\sunrsasign.jar;C\:\\Program Files\\Java\\jdk1.5.0_05\\jre\\lib\\jsse.jar;
java.vendor=Sun Microsystems Inc.
file.separator=\\
java.vendor.url.bug=http\://java.sun.com/cgi-bin/bugreport.cgi
sun.io.unicode.encoding=UnicodeLittle
sun.cpu.endian=little
sun.desktop=windows
sun.cpu.isalist=