论坛首页 入门技术论坛

java读取操作系统环境变量

浏览 3356 次
该帖已经被评为新手帖
作者 正文
   发表时间:2007-10-23  
OO

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);
  }

 }
}

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics