ISO 8601日期时间表示

时间:2017-07-02 10:52:32

标签: datetime calendar iso8601

这是DateTime的有效ISO 8601表示吗?

  

20170704T09:30:00 + 0530

即。是否可以使用基本格式和扩展格式的组合?或者它应该只是其中之一:

  

20170704T093000 + 0530
  2017-07-04T09:30:00 + 05:30

2 个答案:

答案 0 :(得分:1)

In Wikipedia,它表示合并的日期和时间表示可以是基本格式或扩展格式,但日期和时间必须使用相同的格式

ISO 8601中,也没有提及混合表示 - 请参阅 4.3.2 部分中的示例。虽然我无法找到关于混合格式的明确陈述,但在我看来,您无法在同一表示中混合基本格式和扩展格式。

话虽这么说,但我会说{8}中的20170704T09:30:00+0530格式 非格式有效。

答案 1 :(得分:0)

虽然ISO6801-2004不允许混合基本和扩展表示,但2004年修订版中没有明确禁止的条款。

此问题将在ISO8601 [1]的下一版本中得到解决,该版本最终包含有效时间戳语法的Backus-Naur Form定义。

(* 4.3.2 Complete representations *)
dateTimeOfDayBasic = calendarDateBasic, "T", timeCompleteBasic,
                     [ "Z" | UTCoffsetBasic ] ;
dateTimeOfDayExt   = calendarDateExt, "T", timeCompleteExt,
                     [ "Z" | UTCoffsetExt ] ;

[1] 2016-10-26草案:https://www.loc.gov/standards/datetime/ISO_DIS%208601-1.pdf