为什么我在用new Date()获取当前时间的时候总是得到的是GMT的时间,即格林威治的时间。比我们东8区的时间少8个小时。
我用TimeZone打出来的offset时区偏移量也是0
我用的是JDK1.4,系统中的时区也设置了是GMT +8 (北京)
唯一不同的是我的系统是Vista的。
迷惑中。。各位帮忙看看。。
谢谢!~
我用TimeZone打出来的offset时区偏移量也是0
我用的是JDK1.4,系统中的时区也设置了是GMT +8 (北京)
唯一不同的是我的系统是Vista的。
迷惑中。。各位帮忙看看。。
谢谢!~
Properties props=System.getProperties();
Iterator iter=props.keySet().iterator();
while(iter.hasNext())
{
String key=(String)iter.next();
System.out.println(key+" = "+ props.get(key));
}发现在结果中有
...
os.name = Windows NT (unknown)
...
user.timezone = GMT
...感觉是jvm没有很好识别操作系统,想到目前指定的jre是1.5(我是在eclipse中跑的),但是系统中最新的版本是1.6,所以就把eclipse中的jre版本设置为了1.6,随后打印系统属性,以上属性就变成了
...
os.name = Windows Vista
...
user.timezone = Asia/Shanghai
...此时,打印的时间就是本机的系统时间了楼主有空看看,不知道会不会有些帮助
os.name=Windows NT (unknown)