一、
java System.getenv() 与
System.getProperty()用法区别
System.getenv()可以得到系统的所有环境变量
System.getenv(key)可得到系统的某个环境变量
Map map = System.getenv();
Iterator envIt = map.entrySet().iterator();
while(envIt.hasNext())
{
Entry entry = (Entry)envIt.next();
System.out.println(entry.getKey() + " = " + entry.getValue());
}
// 可获取所有环境变量的路径
String java_home = System.getenv("JAVA_HOME");
System.out.println("java_home = " + java_home);
而System.getProperty可以获取系统变量
System.getProperties()获取所有的系统变量
System.getProperty(key)获取某个系统变量
Properties properties = System.getProperties();
Iterator proIt = properties.entrySet().iterator();
while(proIt.hasNext())
{
Entry entry = (Entry)proIt.next();
System.out.println(entry.getKey() + " = " + entry.getValue());
}
String separator =System.getProperty("file.separator");
System.out.println("file.separator= "+ separator);
二、
System原理
System是在lang包中的一个类,这个类中存在大量和系统打交道的实用方法
而且一般都是类方法,.getProperty(String key)就是其中一个比较常用的
方法,用于返回系统参数文件中这个方法指定键所代表的值。由于java是一
种跨平台语言,而不同的操作系统都不一样,比如文件分隔符,在window
下为“\”,而在unix下就成了"\\",这种情况下要想使程序跨平台,就可以
使用这个方法把代表分隔符的那个键的值取到用到程序中。
这些变量通常与你的程序本身没有关系,而是和你的机器的配置和操作系统等有关。