您的位置:首页 > 编程语言 > Java开发

Java获取系统属性及环境变量

2013-09-12 11:37 387 查看
当程序中需要使用与操作系统相关的变量(例如:文件分隔符、换行符)时,Java提供了System类的静态方法getenv()和getProperty()用于返回系统相关的变量与属性,getenv方法返回的变量大多于系统相关,getProperty方法返回的变量大多与java程序有关。

系统属性和环境变量都是名称与值之间的映射。两种机制都能用来将用户定义的信息传递给 Java进程。环境变量产生更多的全局效应,因为它们不仅对Java子进程可见,而且对于定义它们的进程的所有子进程都是可见的。在不同的操作系统上,它们的语义有细微的差别,比如,不区分大小写。因此环境变量更可能有意料不到的副作用。程序中尽可能使用系统属性。环境变量应该在需要全局效应的时候使用,或者在外部系统接口要求使用环境变量时使用(比如 PATH)。

1、环境变量getenv() :用于获取当前系统环境的字符串映射视图;测试代码及运行结果如下:

[java] view
plaincopy

publicclass Test {

publicstaticvoid main(String[] args) {

Map<String, String> map = System.getenv();

for(Iterator<String> itr = map.ketSet().iterator();itr.hasNext();){

String key = itr.next();

System.out.println(key + "=" + map.get(key));

}

}

}

[plain] view
plaincopy

USERPROFILE :用户目录

USERDNSDOMAIN :用户域

PATHEXT :可执行后缀

JAVA_HOME :Java安装目录

TEMP :用户临时文件目录

SystemDrive :系统盘符

ProgramFiles :默认程序目录

USERDOMAIN :帐户的域的名称

ALLUSERSPROFILE :用户公共目录

SESSIONNAME :Session名称

TMP :临时目录

Path :path环境变量

CLASSPATH :classpath环境变量

PROCESSOR_ARCHITECTURE :处理器体系结构

OS :操作系统类型

PROCESSOR_LEVEL :处理级别

COMPUTERNAME :计算机名

Windir :系统安装目录

SystemRoot :系统启动目录

USERNAME :用户名

ComSpec :命令行解释器可执行程序的准确路径

APPDATA :应用程序数据目录

2、系统属性getProperty() :当前的系统属性。测试代码及运行结果如下:

[java] view
plaincopy

publicclass Test {

publicstaticvoid main(String[] args) {

Properties props = System.getProperties();

props.list(System.out);

}

}

[java] view
plaincopy

java.version Java :运行时环境版本

java.vendor Java :运行时环境供应商

java.vendor.url :Java供应商的 URL

java.home :Java安装目录

java.vm.specification.version: Java虚拟机规范版本

java.vm.specification.vendor :Java虚拟机规范供应商

java.vm.specification.name :Java虚拟机规范名称

java.vm.version :Java虚拟机实现版本

java.vm.vendor :Java虚拟机实现供应商

java.vm.name :Java虚拟机实现名称

java.specification.version :Java运行时环境规范版本

java.specification.vendor :Java运行时环境规范供应商

java.specification.name :Java运行时环境规范名称

java.class.version :Java类格式版本号

java.class.path :Java类路径

java.library.path :加载库时搜索的路径列表

java.io.tmpdir :默认的临时文件路径

java.compiler :要使用的 JIT编译器的名称

java.ext.dirs :一个或多个扩展目录的路径

os.name :操作系统的名称

os.arch :操作系统的架构

os.version :操作系统的版本

file.separator :文件分隔符

path.separator :路径分隔符

line.separator :行分隔符

user.name :用户的账户名称

user.home :用户的主目录

user.dir :用户的当前工作目录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: