UTC时间说明

时间:2013-04-30 19:30:39

标签: time timezone utc

当我有以下时间时,有人能解释一下这意味着什么:

2012-12-28T18:12:33 + 01:00

我是整个日期时间的新手,我无法在网上找到一个好的解释。

目前我在荷兰。这是否意味着:

2012-12-28T18:12:33 + 01:00 = 2012-12-28 19:12:33

2012-12-28T18:12:33 + 01:00 = 2012-12-28 17:12:33

2012-12-28T18:12:33 + 01:00 = 2012-12-28 18:12:33

3 个答案:

答案 0 :(得分:1)

2012-12-28T18:12:33+01:00日期字符串表示时区中的2012-12-28 at 18:12对应于UTC的+1小时,即CET时区。

这似乎是ISO 8601 formatT表示时间元素的开始。

  

时间以当地时间表示,并且时区偏移量为   小时和分钟。时区偏移量“+ hh:mm”表示该值   日期/时间使用当地时区,即“hh”小时和“mm”分钟   在UTC之前。时区偏移“-hh:mm”表示   日期/时间使用当地时区,即“hh”小时和“mm”分钟   在UTC之后。

答案 1 :(得分:1)

您提供的值2012-12-28T18:12:33+01:00DateTime+Offset格式的ISO8601值,意思是“2013年12月12日18:12:33,提前一小时 > UTC的。“

+01:00部分代表偏移,而非时区。请参阅TimeZone != Offset

Holland的时区是IANA / Olson数据库中的Europe/Amsterdam,或Windows database中Id为W. Europe Standard Time且英文显示名称为“的a time zone database中的条目( UTC + 01:00)阿姆斯特丹,柏林,伯尔尼,罗马,斯德哥尔摩,维也纳“。

此区域在一年中的部分时间内处于+01:00偏移量,并在欧洲夏令时使用+02:00偏移量。

仅仅因为你在12月份有+01:00,并不意味着这是全年使用的正确偏移量。它也没有告诉你时间戳在荷兰。还有其他几个时区使用相同的偏移量,并不总是在一年中的同一时间。

要从一个时区转换为另一个时区,您需要先应用您拥有的偏移量。使用您拥有的符号的反转。由于您有+01:00,因此您将减去一小时以获得17:12:33的UTC时间。然后,您需要知道一年中该时间的目标时区的正确偏移量。为此,您需要{{3}}。

答案 2 :(得分:0)

国际标准ISO 8601指定日期和时间的数字表示。

YYYY-MM-DDThh:mm:ss.sTZD(例如1997-07-16T19:20:30.45 + 01:00) 其中:

 YYYY = four-digit year
 MM   = two-digit month (01=January, etc.)
 DD   = two-digit day of month (01 through 31)
 hh   = two digits of hour (00 through 23) (am/pm NOT allowed)
 mm   = two digits of minute (00 through 59)
 ss   = two digits of second (00 through 59)
 s    = one or more digits representing a decimal fraction of a second
 TZD  = time zone designator (Z or +hh:mm or -hh:mm)

时间以UTC(协调世界时)表示,带有特殊的UTC指示符(“Z”)。 时间以local time表示,以及以小时和分钟为单位的时区偏移。时区偏移“+ hh:mm”表示日期/时间使用本地时区,即“hh”小时和UTC之前的“mm”分钟。时区偏移“-hh:mm”表示日期/时间使用的local time区域为“hh”小时,“mm”分钟落后于UTC。

在你的情况下:2012-12-28T18:12:33 + 01:00 = 2012-12-28 18:12:33是真的。这意味着在荷兰的时间是18:12,你比UTC早1小时。