论坛首页 入门技术论坛

java 获取时间出错

浏览 6263 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-08-17   最后修改:2009-09-04

 在windowsXP系统中。由于windows的更新,或者windows时间的同步,导致注册表中timezone更改。。影响了java中获取当前默认时区的正确当前时间,(一般情况下都是小时相差几个小时)

 

本人试过两种方法可解决:

     1. 取时间前设置一下默认时区

 

 

TimeZone tz = TimeZone.getTimeZone("ETC/GMT-8");


TimeZone.setDefault(tz);


     2.修改注册表

     

   可从其他电脑导出该位置注册表内容

     [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones]
    或者下载本博客注册表【timezone.zip

    在本地运行即可

 

 另外网上常说还有两种:

  

1设置java命令参数

java -Duser.timezone=Asia/Jerusalem DateTest

2设置JVM的默认时区为东八区(北京时间)

用于WebLogic环境

下面四个目录bea\jdk142_11\jre\lib\zi\Etcbea\jdk142_11\jre\lib\zibea\jrockit81sp6_142_10\jre\lib\zi\Etcbea\jrockit81sp6_142_10\jre\lib\zi下找到GMT文件bak备份一下,然后复制一份GMT-8并重命名为GMT,复制完毕,重新运行一下java程序问题即可解决!

 

 

 

 

 

 

 

   发表时间:2009-10-19  
我采用了第一條,多謝!
這么好的帖子爲什麽下載資源的會無視...
0 请登录后投票
   发表时间:2009-10-26  
poster214 写道
我采用了第一條,多謝!
這么好的帖子爲什麽下載資源的會無視...

谢谢关照。
0 请登录后投票
   发表时间:2009-12-19   最后修改:2009-12-19
关于资源的话 上面的方法已经可以解决的 那其他的那些人还会下载那个资源吗? 呵呵
个人觉得还是去修改Eclipse 这样的话你的系统怎么换时区都可以取得正确的时间(GMT-8),当然方便的还是直接导入注册表快  呵呵 个人观点
0 请登录后投票
论坛首页 入门技术版

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