Windows7在稳定性和可靠性上确实做的比较成功,但是搞JAVA开发的朋友肯定会遇到一个问题,那就是在windows7操作系统里,开发java程序,使用JDK1.5运行程序的时候,惊讶的发现new Date()出来的当前时间竟然和真实时间相差8小时。注意,JDK1.6是不会出现这个问题的,问题就在于jdk1.5里读取时区的时候出现问题,没有读到中国的夏令时间。解决办法有两种
一、在代码前增加时间区域设置,如下:
- DateFormat dateFormatterChina = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
-
TimeZone timeZoneChina = TimeZone.getTimeZone("Asia/Shanghai");
-
dateFormatterChina.setTimeZone(timeZoneChina);
-
Date curDate = new Date();
-
- System.out.println(dateFormatterChina.format(curDate));
DateFormat dateFormatterChina = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);//格式化输出
TimeZone timeZoneChina = TimeZone.getTimeZone("Asia/Shanghai");//获取时区
dateFormatterChina.setTimeZone(timeZoneChina);//设置系统时区
Date curDate = new Date();//获取系统时间
System.out.println(dateFormatterChina.format(curDate));
但这种办法太死板了,从程序上解决只是治标,却不治本,而且增加代码复杂度,每个获取当前时间的地方都要对应的改,即便提供工具类,也是把原汁原味的东西改了个便。所以建议大家使用方案二。
二、修改windows7注册表(推荐)
运行regedit命令,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Time Zones\China Standard Time。
新建一个字符串“mapId”,值为“-1,75”,如下图
然后在java程序中运行new Date,OK
分享到:
相关推荐
在win7下装JDK1.4和JDK1.5、eclipse,输出系统时区和时间。 果然,输出时区为"GMT",时间差8小时。那就说明是jdk1.5在win7下取不到正确的时区。 什么原因呢,为了验证我的假设,又下了最新的jdk1.6,后台打印输出...
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会...
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会...
Java应用开发与课程设计实例 Java程序设计及应用 Java应用开发与课程设计实例全文共20页,当前为第1页。 2023/5/29 应用开发与课程设计实例 2 1.1 系统开发概述 通常,系统开发要经历系统规划、系统分析、系统设计、...
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会...
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会...
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会...
操作系统:Windows 2003、Windows XP Professional,或者Windows 2000 开发环境:UltraEdit12.10a、eclipse-jee-europa Web浏览器:Microsoft Internet Explorer 6.0及以上版本 Web服务器:Tomcat 5.5.20及以上...
操作系统:Windows 2003、Windows XP Professional,或者Windows 2000 开发环境:UltraEdit12.10a、eclipse-jee-europa Web浏览器:Microsoft Internet Explorer 6.0及以上版本 Web服务器:Tomcat 5.5.20及以上...
12.12.7 text-indent属性... 378 12.12.8 line-height属性... 378 12.13 框属性... 380 12.13.1 页边距属性... 380 12.13.2 边框线属性... 381 12.13.3 贴边属性... 384 12.13.4 大小属性... 385 12.13.5 ...
的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...
Jdk安装目录下D:\toots\Java\jdk1.6.0_18\bin\msvcr71.dll复制到C:\WINDOWS\system32下 二、 安装过程 设置环境变量: JAVA_HOME= D:\toots\Java\jdk1.6.0_18 classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\...
java版斗地主源码 EasyPR EasyPR是一个开源的中文车牌识别系统,其目标是成为一个简单、高效、准确的车牌识别库。 相比于其他的车牌识别系统,EasyPR有如下特点: 它基于openCV这个开源库。这意味着你可以获取全部源...
6.2.6 使用计划信息来解决问题 161 6.3 小结 169 第7章 高级分组 170 7.1 基本的GROUP BY用法 171 7.2 HAVING子句 174 7.3 GROUP BY的“新”功能 175 7.4 GROUP BY的CUBE扩展 175 7.5 CUBE的实际应用 179 ...
可用的源代码在这里:https://github.com/antoniopelusi/File-Splitter版本:1.5... com / en / download /临时文件将被自动删除输出文件存储在:-Windows OS的File Splitter当前文件夹中-Linux操作系统的home文件夹中