工作中用到了java.util.Date这个类,现在项目又与美国那边合作,于是得考虑时差问题,先用这个类做了实验,Date date = new Date(System.currentTimeMillis());用System.out.print("Date: "+date);输出后结果为:
Date: Fri Feb 01 10:49:44 CST 2008这个怎么解释,我觉得应该输出Date: Fri Feb 01 10:49:44 GMT+8 2008,这个不输出的话也得是GMT或UTC呀,怎么出来这个CST(美国中部时间)呢?
Date: Fri Feb 01 10:49:44 CST 2008这个怎么解释,我觉得应该输出Date: Fri Feb 01 10:49:44 GMT+8 2008,这个不输出的话也得是GMT或UTC呀,怎么出来这个CST(美国中部时间)呢?
解决方案 »
- eclipse连接oracle 10g数据库时出错
- 关于OutputStream;InputStream的flush()方法
- 数据库改变 生成改变数据库的语句
- JDBC连接出错,求救
- swing中的 联动日历
- java 读 Excel 文件后把数据转换成二维数组的代码。(带日志输出的)
- 像vc中那样右上角有一个x的面板有对应的java组件吗?
- *****************顶者有分,100分紧急求助,如何获得java当前进程的句柄?*********
- 打包jar后,文件读取不到的问题
- another 100分
- 汉字的unicode码范围是多少
- 如何使用log4j把日志记录到一个动态的根据时间生成的一个文件名的文件中!
public Date(long date)使用给定毫秒时间值构造一个 Date 对象。如果给定毫秒值包含时间信息,则驱动程序会将时间组件设置为对应于零 GMT 的默认时区(运行应用程序的 Java 虚拟机的时区)中的时间。 参数:
date - 不超过 year 8099 的毫秒表示的自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。负数指示在 1970 年 1 月 1 日 00:00:00 GMT 之前的毫秒数。
public Date(long date)使用给定毫秒时间值构造一个 Date 对象。如果给定毫秒值包含时间信息,则驱动程序会将时间组件设置为对应于零 GMT 的默认时区(运行应用程序的 Java 虚拟机的时区)中的时间。 参数:
date - 不超过 year 8099 的毫秒表示的自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。负数指示在 1970 年 1 月 1 日 00:00:00 GMT 之前的毫秒数。
啊?不会吧? 有这样的事?那在国际上怎么与美国的那个CST(中部标准时间区 Center Standard Time)区分?
CST Central Standard Time (Australia) GMT+930
CST China Standard Time GMT+800
CST Cuba Standard Time GMT-400
CST Central Standard Time (Australia) UT+9:30
CST China Standard Time UT+8:00
CST Cuba Standard Time UT-4:00在unix下通过/etc/localtime这个硬连接指向的/usr/share/zoneinfo下的时区文件表示当前的真正时区。比如/etc/localtime指向了/usr/share/zoneinfo/Asia/Shanghai这个文件的时候,CST就代表了中国标准时间。
但是很多语言的时间函数库根本不做这个判断,往往就是用一个独立的时区配置文件做时区关键字和GMT的转换。因此很多系统里面CST都变成了GMT-6,也就是美国中部时间。在处理时间的时候最好还是加上locale~~~~~~
楼主【rmn190】截止到2008-07-08 16:16:09的历史汇总数据(不包括此帖):
发帖的总数量:189 发帖的总分数:2025 每贴平均分数:10
回帖的总数量:70 得分贴总数量:12 回帖的得分率:17%
结贴的总数量:64 结贴的总分数:965
无满意结贴数:4 无满意结贴分:60
未结的帖子数:125 未结的总分数:1060
结贴的百分比:33.86 % 结分的百分比:47.65 %
无满意结贴率:6.25 % 无满意结分率:6.22 %
楼主该结一些帖子了
被坑了这么多年终于明白了CST原来也可以是China Standard Time...
我恨有道词典...