全球24个时区的划分
      相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究竟这24个时区是如何产生的?过去世界各地原本各自订定当地时间,但随着交通和电讯的发达,各地交流日益频繁,不同的地方时间,造成许多困扰,于是在西元1884年的国际会议上制定了全球性的标准时,明定以英国伦敦格林威治这个地方为零度经线的起点(亦称为本初子午线),并以地球由西向东每24小时自转一周360°,订定每隔经度15°,时差1小时。而每15°的经线则称为该时区的中央经线,将全球划分为24个时区,其中包含23个整时区及180°经线左右两侧的2个半时区。就全球的时间来看,东经的时间比西经要早,也就是如果格林威治时间是中午12时,则中央经线15°E的时区为下午1时,中央经线30°E时区的时间为下午2时;反之,中央经线15°W的时区时间为上午11时,中央经线30°W时区的时间为上午10时。以台湾为例,台湾位于东经121°,换算后与格林威治就有8小时的时差。如果两人同时从格林威治的0°各往东、西方前进,当他们在经线180°时,就会相差24小时,所以经线180°被定为国际换日线,由西向东通过此线时日期要减去一日,反之,若由东向西则要增加一日。

格林威治标准时间GMT
      十七世纪,格林威治皇家天文台为了海上霸权的扩张计画而进行天体观测。1675年旧皇家观测所(Old Royal Observatory) 正式成立,到了1884年决定以通过格林威治的子午线作为划分地球东西两半球的经度零度。观测所门口墙上有一个标志24小时的时钟,显示当下的时间,对全球而言,这里所设定的时间是世界时间参考点,全球都以格林威治的时间作为标准来设定时间,这就是我们耳熟能详的「格林威治标准时间」(Greenwich Mean Time,简称G.M.T.)的由来,标示在手表上,则代表此表具有两地时间功能,也就是同时可以显示原居地和另一个国度的时间。

世界协调时间UTC
      多数的两地时间表都以GMT来表示,但也有些两地时间表上看不到GMT字样,出现的反而是UTC这3个英文字母,究竟何谓UTC?事实上,UTC指的是Coordinated Universal Time- 世界协调时间(又称世界标准时间、世界统一时间),是经过平均太阳时(以格林威治时间GMT为准)、地轴运动修正后的新时标以及以「秒」为单位的国际原子时所综合精算而成的时间,计算过程相当严谨精密,因此若以「世界标准时间」的角度来说,UTC比GMT来得更加精准。其误差值必须保持在0.9秒以内,若大于0.9秒则由位于巴黎的国际地球自转事务中央局发布闰秒,使UTC与地球自转周期一致。所以基本上UTC的本质强调的是比GMT更为精确的世界时间标准,不过对于现行表款来说,GMT与UTC的功能与精确度是没有差别的。

夏日节约时间DST
      所谓「夏日节约时间」Daylight Saving Time(简称D.S.T.),是指在夏天太阳升起的比较早时,将时钟拨快一小时,以提早日光的使用,在英国则称为夏令时间(Summer Time)。这个构想于1784年由美国班杰明·富兰克林提出来,1915年德国成为第一个正式实施夏令日光节约时间的国家,以削减灯光照明和耗电开支。自此以后,全球以欧洲和北美为主的约70个国家都引用这个做法。目前被划分成两个时区的印度也正在商讨是否全国该统一实行夏令日光节约时间。欧洲手机上也有很多GSM系统的基地台,除了会传送当地时间外也包括夏令日光节约时间,做为手机的时间标准,使用者可以自行决定要开启或关闭。值得注意的是,某些国家有实施「夏日节约时间」的制度,出国时别忘了跟随当地习惯在表上调整一下,这可是机械表没有的功能设计哦!

CST时间

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

今天遇到一个奇怪的问题,在服务器端通过 c# 获取当前时间为 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时间。

24时区,GMT,UTC,DST,CST时间详解相关推荐

  1. 很多程序员都没搞明白的时间与时区知识 - 24时区/GMT/UTC/DST/CST/ISO8601

    全球24个时区的划分       相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究 ...

  2. 24时区,GMT,UTC,DST,CST时间详解 ISO8601

    全球24个时区的划分       相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究 ...

  3. 科普:24时区,GMT,UTC,DST,CST时间详解

    GMT:格林威治时间 格林威治(也称:格林尼治)(Greenwich Mean Time,简称G.M.T.) 时间,也叫世界时(Universal Time),也叫世界标准时间.是指位于英国伦敦郊区的 ...

  4. linux c 设置utc时间,C/C++标准库之转换UTC时间到local本地时间详解

    前言 UTC 时间DateTime.UtcNow 和 系统本地时间 DateTime.Now 相差8个时区 ,美国本地时间和北京时间相差15个时区: 美国,而一般使用UTC时间方便统一各地区时间差异. ...

  5. UTC时间,本地时间,moment,时间 详解

    UTC时间,本地时间,moment,时间 详解 一.背景 utc时间和北京时间: utc:世界协调时,以英国格林威治时间为准 utc时间和北京时间相差8小时: 北京时间:2021-1-1 22:18 ...

  6. Linux下的时间详解【转】

    Linux下的时间详解 [转载]http://www.fangshanzi.com/linux-time-function-detail/ 1.首先来总结一下hwclock,这个容易晕: 1)/etc ...

  7. linux c++ 获取时间,详解Linux下的C++时间类型:time_t

    Unix时间戳(Unix timestamp),或称Unix时间(Unix time).POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00 ...

  8. JS中的日期和时间详解

    JS中的日期和时间详解 关于Date()构造函数 简单实例 用Date()构造函数创建时钟 关于Date()构造函数 Date()构造函数是javascript的核心语言部分,用来创建表示时间和日期的 ...

  9. 明日之后服务器什么时候维护结束,明日之后什么时候合区 合区时间详解[多图]...

    明日之后官方会将一些活跃人数不多的区进行合区,来增加大区的活跃,玩家们对这个合区的时间很关注,下面安族小编给大家介绍一下合区时间详解. 明日之后最新合服时间公告 老区会有2个区合成在一起,这个叫做数据 ...

最新文章

  1. Linux Kernel TCP/IP Stack — L1 Layer — NIC Controller — SKB
  2. page fault in nonpaged area 蓝屏_由于错误的更新,安装Windows 10 KB4549951后蓝屏死机解决办法...
  3. Python 技术篇-win32、amd64结尾的whl库该选哪个,如何查看python平台支持
  4. QT 32位程序Debug模式发布问题
  5. (六)可信计算知识点
  6. Android应用性能优化之优化列表头像过度绘制[一]
  7. AI独角兽云从科技:用人机协同战略,跨AI工程的楚河汉界
  8. 智能一代云平台(三十四):后端架构一些总结
  9. 【Linux】scp IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
  10. 重新复习数据结构-------ArrayList
  11. 凸优化第五章对偶 5.3 几何解释
  12. 关于typescript中的extends和infer以及用法
  13. html5苹果手机视频不自动播放,HTML5 解决苹果手机不能自动播放音乐问题
  14. ECharts饼图制作分析
  15. Python——计算器
  16. 未来5年可能必备的IT技术
  17. Fedora 19安装Fcitx输入法并安装搜狗输入法资源包
  18. 数组、数组的定义、对数组的理解
  19. 组装一台计算机的配置,2000元组装一台i7迷你主机电脑配置推荐
  20. Eclipse+Maven+Nexus+Tomcat远程搭建CentOS web server

热门文章

  1. 定个小目标,炒股咯....
  2. Smart/400开发上手2: COBOL批处理程序处理过程
  3. Mac清理软件为苹果系统迅速减压
  4. SpringMVC源码阅读(一)
  5. IOS9 微信sdk升级指南
  6. 工厂模式之消除switch/case语句
  7. [转]Android Service Test——简单测试例子
  8. WebbUpload上传组件(cnblog 一位网友写的)
  9. 【火炉炼AI】机器学习032-用户之间相似度的计算
  10. Bengio:我留在学术圈为全人类作贡献,而不是为某一个公司赚钱