Java获取操作系统相关信息

来源:互联网 发布:车牌识别软件源代码 编辑:程序博客网 时间:2024/05/22 11:33
    本来刚才只发现用System.getProperties()可以获取系统的信息.包括JDK路径,系统版本等等信息.我需要的是System.getProperty("sun.desktop")获取系统类型,因为我用的是Windows操作系统,所以返回的String为windows.用System.getProperty("os.name")可以获取更详细的一些信息,我得到的结果为windows xp  
      
    现在给大家推荐一些我认为有些作用的字段  
      
    user.home 可以获取当前用户的主目录  
      
    java.specification.version 获取当前JDK的版本号  
      
    java.class.path 获取classpath  
      
    user.name 获取当前用户名  
      
    java.home 获取JDK路径  
      
    sun.os.patch.level 获取系统版本号..也可以说是补丁号 我的显示为Service Pack 2  
      
    user.dir 当前程序的主目录  
      
    os.arch 显示系统操作系统的类型 我的显示为X86  
      
    os.version 显示系统内部版本号  
      
    java.io.tmpdir 显示当前系统的临时目录  
      
    后来发现Java SE 6.0的新功能比这样先判断操作系统类型再执行特定操作方便多了.因为java.awt.Desktop类的java.awt.Desktop.isDesktopSupported()可以获取当前系统是否支持java awt桌面扩展.如果支持可以获取当前系统的Desktop  
      
        java.awt.Desktop dp = java.awt.Desktop.getDesktop();                dp.browse(java.net.URI);  

     
    就可以启动系统默认的浏览器,所以也就解决了跨平台的问题.下面是示例代码:  
      
        public class TestSystem {              public static void main(String[] args) {                  //判断当前系统是否支持Java AWT Desktop扩展                  if(java.awt.Desktop.isDesktopSupported()){                      try {                          //创建一个URI实例                          java.net.URI uri = java.net.URI.create("http://www.hzhuti.com /");                          //获取当前系统桌面扩展                          java.awt.Desktop dp = java.awt.Desktop.getDesktop();                          //判断系统桌面是否支持要执行的功能                          if(dp.isSupported(java.awt.Desktop.Action.BROWSE)){                              //获取系统默认浏览器打开链接                              dp.browse(uri);                             }                      } catch(java.lang.NullPointerException e){                          //此为uri为空时抛出异常                      } catch (java.io.IOException e) {                          //此为无法获取系统默认浏览器                      }                              }              }          }  

     
    键   相关值的描述   
    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  文件分隔符(在 UNIX 系统中是“/”)   
    path.separator  路径分隔符(在 UNIX 系统中是“:”)   
    line.separator  行分隔符(在 UNIX 系统中是“/n”)   
    user.name   用户的账户名称   
    user.home   用户的主目录   
    user.dir    用户的当前工作目录