解决java获取系统时间差8个小时_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 解决java获取系统时间差8个小时

解决java获取系统时间差8个小时

 2011/11/7 8:01:57  wmlJava  http://wmljava.iteye.com  我要评论(0)
  • 摘要:在WIN7下发现一些Java的程序获取系统时间比真实时间差了8个小时,怀疑是Java程序沿用了低版本的JDK,获取时间时取的GSM0时区,而中国是GSM+8,所以查了8个小时,解决办法如下:修改如下:Dated=newDate();SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddkk:mm:ss");sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));System.out
  • 标签:解决 Java

在WIN7下发现一些Java的程序获取系统时间比真实时间差了8个小时,怀疑是Java程序沿用了低版本的JDK,获取时间时取的GSM 0时区,而中国是GSM +8,所以查了8个小时,解决办法如下:

?

修改如下:

?

Date d = new Date();
  SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd  kk:mm:ss ");
  sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
  System.out.println(sdf.format(d));

?

??或者:

 Calendar now = Calendar.getInstance();
    now.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));//important
    System.out.println(now.get(Calendar.HOUR_OF_DAY));
    System.out.println(now.get(Calendar.MINUTE));
    System.out.println(now.get(Calendar.SECOND));

????

?

?

这样就可以了。

关键就是设置TimeZone: TimeZone.getTimeZone("Asia/Shanghai")

发表评论
用户名: 匿名