package com.laies;
import java.util.*;
import java.io.*;
/**
* @author 梁越
* @文件名:SysProb.java<br>
* @描述: 取得当前系统变量的程序
*/
public class SysProb {
// 返回当前系统变量的函数,结果放在一个Properties里边,这里只针对win2k以上的,其它系统可以自己改进
public Properties getEnv() throws Exception {
Properties prop = new Properties();
String OS = System.getProperty("os.name").toLowerCase();
Process p = null;
if (OS.indexOf("windows") > -1) {
p = Runtime.getRuntime().exec("cmd /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 {
SysProb sp = new SysProb();
Properties p = sp.getEnv();
System.out.println(p.getProperty("TEMP")); // 注意大小写
} catch (Exception e) {
System.out.println(e);
}
}
}