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

来源:互联网 发布:淘宝接单平台软件下载 编辑:程序博客网 时间:2024/06/05 21:56

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


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

系统属性和环境变量都是名称与值之间的映射。两种机制都能用来将用户定义的信息传递给 Java 进程。环境变量产生更多的全局效应,因为它们不仅对Java子进程可见,而且对于定义它们的进程的所有子进程都是可见的。

在不同的操作系统上,它们的语义有细微的差别,比如,是否区分大小写,因此环境变量更可能有意料不到的副作用,程序中尽可能使用系统属性。环境变量应该在需要全局效应的时候使用,或者在外部系统接口要求使用环境变量时使用(比如 PATH)。

1 环境变量 getenv()

用于获取当前系统环境的字符串映射视图,测试代码如下:

publicclass Test {    publicstaticvoid main(String[] args) {        Map<String, String> map = System.getenv();        for(Iterator<String> itr = map.keySet().iterator();itr.hasNext();){            String key = itr.next();            System.out.println(key + "=" + map.get(key));        }       }} 
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 ()

当前的系统属性,测试代码如下:

System.getProperties()  得到所有的系统属性System.getProperty(key)  得到某个系统属性的值
Properties properties = System.getProperties(); Iterator it = properties.entrySet().iterator(); while(it.hasNext()) {   Entry entry = (Entry)it.next();   System.out.print(entry.getKey()+"=");   System.out.println(entry.getValue()); } 
java.version Java :运行时环境版本java.vendor Java :运行时环境供应商java.vendor.url :Java供应商的 URLjava.home &nbsp;&nbsp;:Java安装目录java.vm.specification.version: Java虚拟机规范版本java.vm.specification.vendor :Java虚拟机规范供应商java.vm.specification.name &nbsp; :Java虚拟机规范名称java.vm.version :Java虚拟机实现版本java.vm.vendor :Java虚拟机实现供应商java.vm.name&nbsp; :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:用户的当前工作目录




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

原创粉丝点击