`

CST和GMT时间的区别

阅读更多

今天遇到一个奇怪的问题,在服务器端通过 Java 获取当前时间为 Fri Aug 28 09:37:46 CST 2009, 转化为
GMT时间为:28 Aug 2009 01:37:46 GMT,也就是说GMT时间加上 8 个小时等于CST表示的时间, 那这个
CST不就是北京时间么,因为我们是在东八区的。 
 
一切看起来很正常,不过在客户端用JavaScript解析这个时间就有问题了: 
    // Fri Aug 28 2009 23:37:46 GMT+0800
   new Date('Fri Aug 28 09:37:46 CST 2009').toString();
   
好奇怪,这次GMT和CST表示的时间居然相差整整 14 个小时? 
 
 
 
百度一下 
 
找到这篇文章,问题已经很明了。 
 
GMT(Greenwich Mean Time)代表格林尼治标准时间,这个大家都知道。 
而CST却同时可以代表如下 4 个不同的时区: 
Central Standard Time (USA) UT-6:00
Central Standard Time (Australia) UT+9:30
China Standard Time UT+8:00
Cuba Standard Time UT-4:00 
 
可见,CST可以同时表示美国,澳大利亚,中国,古巴四个国家的标准时间。 
 
前面提到的通过 Java 获取的CST时间用的是China Standard Time,而客户端JavaScript则默认采用的是美国
的中部时间。 
 
所以将 Fri Aug 28 09:37:46 CST 2009 加上 6 个小时,再加上 8 个小时,就等于 Fri Aug 28 2009 23:37:46
GMT+0800 
 
可见,在以后的编程中为了避免错误,还是不要使用CST时间,而尽量采用GMT时间。 
 
          2009-9-25 2:19:39 
        疯狂代码 http://CrazyCoder.cn/

分享到:
评论

相关推荐

    Java中CST和GMT的区别及用法

    ### Java中CST和GMT的区别及用法 #### 一、引言 在进行日期和时间处理时,正确理解和使用时区概念对于确保程序的准确性和一致性至关重要。本文旨在深入探讨Java中的CST(Central Standard Time)和GMT(Greenwich ...

    C++时间戳转化操作实例分析【涉及GMT与CST时区转化】

    这个示例代码将时间戳1408413451转换为GMT时区的时间字符串,然后再将其转换为CST时区的时间字符串。 五、时间戳转换工具 本站还提供了一个Unix时间戳转换工具,包含了各种常见语言针对时间戳的操作方法,提供给...

    C++ 时间戳转化(涉及 GMT CST 时区转化)

     时间戳转换(时间戳:自 1970 年1月1日(00:00:00 )至当前时间的总秒数。)  #include  #include int main(int argc, const char * argv[])  {  time_t t;  struct tm *p;  t=1408413451;  p=...

    格林威治时间转化北京时间以及时间转换格式代码大全

    而北京时间,也称为中国标准时间(CST),是指东八区的区时,比GMT快8小时。 在Android应用开发中,Java语言提供了`java.util.Date`和`java.time`包中的类来处理日期和时间。例如,`java.util.Date`是最基础的时间...

    GPS UTC与北京时间的转换函数

    而北京时间,也称为中国标准时间(CST),是东八区的区时,即UTC+8。 GPS系统由24颗卫星组成,每颗卫星都携带高精度的原子钟,以UTC为基准发送时间信号。接收机通过接收到的多颗卫星信号,可以计算出自己的地理位置...

    Linux 7安装配置NTP网络时间同步服务器

    CST(China Standard Time)是中国的标准时间,等于 GMT+8。DST(Daylight Saving Time)是夏令时,指在夏天太阳升起的比较早时,将时间拨快一小时,以提早日光的使用,但中国不使用 DST。 安装 NTP 首先,我们...

    linux系统时间和硬件时钟问题(date和hwclock)

    在大多数情况下,可以将其视为格林威治标准时间(GMT)。 - **本地时间**: 指的是根据用户所在地理位置调整后的UTC时间。例如,在中国使用的本地时间通常是CST(China Standard Time),即UTC+8。 #### 二、关键知识...

    java笔试面试--日期时间处理要点.pdf

    打印`Date`对象时,会按照系统默认的时区显示日期和时间,例如"CST"代表中国标准时间,即UTC+8:00。 `Date`对象提供了`getTime()`和`setTime(long time)`方法来获取或设置日期的毫秒值。这两个方法分别用于获取日期...

    python 带时区的日期格式化操作

    几种不同的日期格式化方式,不同的时区时间转换成北京时间,也就是东八区的时间,注意的是后面的时区表示方式, def getTimeStamp(self, date): result = re.search(r"[\-\+]\d+", date) if result:

    获取网络时间源码

    NTP服务器通常提供格林尼治标准时间(GMT),这是国际协调时间(UTC)的基础,而北美标准时间则包括美国和加拿大的几个时区,如东部标准时间(EST)、中部标准时间(CST)等。 要实现获取网络时间,我们需要使用...

    java笔试面试--日期时间处理..pdf

    格林威治标准时间(GMT)是世界时间标准之一,它是以英国伦敦格林威治天文台为参考点的时间标准。格林威治标准时间是世界时间standard之一,它与 UTC(Coordinated Universal Time)是两种不同但相近的时间标准。UTC...

    CentOS7设置日期和时间方法以及基本概念介绍.docx

    在Linux系统管理中,了解如何正确设置和管理日期与时间是非常关键的,特别是在服务器环境,因为这直接影响到日志记录、程序同步以及其他依赖时间的服务。本文档主要介绍了在CentOS 7系统中设置日期和时间的方法,...

    标准中国时间(精简版)

    效果如:Thu Nov 08 2012 14:42:10 GMT+0800 (中国标准时间) 星期四 不需要引入外部JS 就一句话搞定

    将中国标准时间转换成标准格式的代码

    Thu Aug 22 2013 15:12:00 GMT+0800 (中国标准时间) 转换 代码如下: function formatTen(num) { return num > 9 ? (num + “”) : (“0” + num); } function formatDate(date) { var year = date.getFullYear(); ...

    Java 获取日期时间代码

    输出结果类似于:“Mon Mar 12 17:40:00 CST 2007”,这种方式可以获取到当前系统的完整日期时间。 ##### 3.2 获取日期(不含时间) ```java public class TestDate { public static void main(String[] args) { ...

    js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)

    时间戳是一个表示从1970年1月1日(UTC/GMT的午夜)开始所经过的毫秒数,常用于计算机系统中,尤其是在JavaScript编程中表示时间。JavaScript中的Date对象提供了方法来处理日期和时间。 #### ES6语法特点 ...

    Linux系统中date命令及相关时区介绍

    首先,`date`命令的基本用法是不带任何参数直接运行,它会输出当前系统的日期和时间,例如:`Tue Oct 24 20:18:11 CST 2006`。这里的"Tue"代表星期二,"Oct"是十月,"24"是日期,"20:18:11"是具体时间,而"CST"则...

    Java中的日期时间类.doc

    它本质上是一个包装类,内部存储的是自1970年1月1日00:00:00 GMT(格林尼治标准时间)以来的毫秒数。该类提供了两个常用的构造函数: 1. **构造函数**: - `Date()`: 创建一个表示当前时间的`Date`对象。 - `Date...

    JSON.stringify转换JSON时日期时间不准确的解决方法

    国际时间采用的是协调世界时(UTC),而GMT是过去的时区标准,尽管二者在时间表示上目前基本一致,但它们的含义和历史背景有所不同。而中国时区为东八区,即UTC/GMT+8小时。 当使用JSON.stringify将日期对象转换为...

Global site tag (gtag.js) - Google Analytics