六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 29|回复: 0

Java读取环境变量

[复制链接]

升级  20%

184

主题

184

主题

184

主题

进士

Rank: 4

积分
600
 楼主| 发表于 2013-1-28 19:16:47 | 显示全部楼层 |阅读模式
import java.io.BufferedReader;   import java.io.InputStreamReader;   import java.util.Properties;     class Test   {    // 返回当前系统变量的函数,结果放在一个Properties里边,这里只针对win2k以上的,其它系统可以自己改进    public Properties getEnv() throws Exception    {     Properties prop = new Properties();     String OS = System.getProperty("os.name").toLowerCase();     System.out.println("操作系统:" + OS);     Process p = null;     if (OS.indexOf("windows") > -1)     {      p = Runtime.getRuntime().exec("cmd /c set");     }      if(OS.indexOf("linux") > -1)            {               p = Runtime.getRuntime().exec("sh -c set");            }     BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));     String line;     while ((line = br.readLine()) != null)     {      int i = line.indexOf("=");      if (i > -1)      {       String key = line.substring(0, i);       String value = line.substring(i + 1);       prop.setProperty(key, value);      }     }     return prop;    }      // 具体用法    public static void main(String[] args)    {     try    {      Test sp = new Test();      Properties p = sp.getEnv();      System.out.println(p.getProperty("PATH")); // 注意大小写,比如读取PATH。Linux下为PATH;Windows为Path     }     catch (Exception e)     {      System.out.println(e);     }    }   }
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表