ISO 8601的月 - 日部分是-MM-DD格式吗?

时间:2014-08-06 13:17:15

标签: date datetime iso8601 java-time

Java 8日期/时间API java.time有一个MonthDay class来代表一个月和一天。 Joda-Time库也提供MonthDay类。

在java.time中,MonthDay.toString()方法声明为:

  

将此月 - 日输出为字符串,例如--12-03。

java.time中的大多数类都使用toString()方法输出它们所代表的概念的标准ISO 8601表示(例如YYYY-MM-DD的{​​{1}}),所以我会期望此LocalDate格式也是标准格式。

但我无法在ISO 8601标准中找到它。

月 - 日是ISO 8601定义的概念,如果是,--MM-DD是标准格式吗?

背景:我正在用另一种语言开发日期/时间API。

1 个答案:

答案 0 :(得分:5)

是的,在第4.4段中,ISO 8601:1988说:

  

注 - 连字符也用于表示省略的组件

因此格式--MM-DD符合ISO 8601,其中省略/缺少年份,而段落5.2.1.3d也包含该格式的示例。

此格式在ISO 8601标准的后续版本中消失了。但是,java.time类继续支持该格式以及MonthDay类。