ISO 8601

求聞百科,共筆求聞
日期和時間的表示方法; [重新整理]
日期2024-06-03
UTC日期與時間2024-06-03T08:15:30+00:00
2024-06-03T08:15:30Z
20240603T081530Z
周數2024-W23
日期與周數2024-W23-1
無年份標示之日期--06-03-ISO[1]
當年度累積日數2024-155

國際標準ISO 8601,是國際標準化組織的日期和時間的表示方法,全稱為《資料元及交換格式·資訊交換·日期及時間的表示法》。目前是2004年12月1日發行的第三版「ISO8601:2004」以替代1998年的第一版「ISO8601:1998」與2000年的第二版「ISO8601:2000」。

日期表示法

年由4位數字組成YYYY,或者帶正負號的四或五位數字表示±YYYYY。以公曆公元1年為0001年,以公元前1年為0000年,公元前2年為-0001年,其他以此類推。應用其他紀年法要換算成公曆,但如果發送和接受訊息的雙方有共同一致同意的其他紀年法,可以自行應用。

月、日用兩位數字表示:MM、DD。

只使用數字為基本格式。使用短橫線"-"間隔開年、月、日為擴展格式

ISO 8601:2004不再允許預設世紀僅用兩位數字表示年,這會與小時數的表示相混淆。而遵循ISO 8601:2000的GB/T 7408-2005,尚還存在這一問題。

日曆日期表示法

年為4位數,月為2位數,月中的日為2位數,例如,日期(2024年6月3日)可表示為2024-06-03,或20240603

順序日期表示法

完全表示:可以將一年內的天的序數用3位數字表示,平年365天,閏年366天。如2004年5月3日可以表示為2004-1242004124

星期日曆表示法

可以用2位數表示年內第幾個日曆星期,再加上一位數表示日曆星期內第幾天,但日曆星期前要加上一個大寫字母W,如2004年5月3日可寫成2004-W19-1或2004W191。但2005-W011是從2005年1月3日開始的,前幾天屬於上年的第53個日曆星期。每個日曆星期從星期一開始,星期日為第7天。

第一個日曆星期有以下四種等效說法: 1,本年度第一個星期四所在的星期; 2,1月4日所在的星期; 3,本年度第一個至少有4天在同一星期內的星期; 4,星期一在去年12月29日至今年1月4日以內的星期;

推理可得,如果1月1日是星期一、星期二、星期三或者星期四,它所在的星期就是第一個日曆星期;如果1月1日是星期五、星期六或者星期日,它所在的星期就是上一年第52或者53個日曆星期;12月28日總是在一年最後一個日曆星期。

日曆星期表示法

可以用2位數表示本年內第幾個日曆星期,但日曆星期前要加上一個大寫字母W。 其他規定同星期日曆表示法。

例如,如2004年第19個星期可寫成:2004-W192004W19

日曆月表示法

可以用2位數表示本年內第幾個日曆月。

例如,如2015年7月可寫成:201507或2015-07

日曆年表示法

例如,如2015年可寫成:2015

日期時間表示法

只使用數字為基本格式。使用冒號":"間隔開小時、分、秒的為擴展格式。小時、分和秒都用2位數表示。

對於當地時間15時27分46秒,

  • 完全表示:152746或15:27:46
  • 預設小時的特定分和秒:-2746或-27:46
  • 降低精度僅有小時和分:1528或15:28
  • 預設小時的特定分:-28
  • 預設日的特定小時:15
  • 帶有小數的當地時間的完全表示:152735.5或15:27:35.5
  • 預設小時的分,帶有小數的秒:-2735.5或-27:35.5
  • 午夜,一日的開始:完全表示為000000或00:00:00;僅有小時和分表示為0000或00:00
  • 午夜,一日的終止:完全表示為240000或24:00:00;僅有小時和分表示為2400或24:00
  • 如果時間在零時區,並恰好與協調世界時相同,那麼(不加空格地)在時間最後加一個大寫字母Z。Z是相對協調世界時時間0偏移的代號。如下午2點30分5秒表示為14:30:05Z143005Z;只表示小時和分,為1430Z或14:30Z;只表示小時,則為14Z或14Z。
  • 其他時區用實際時間加時差表示,當時的UTC+8時間表示為22:30:05+08:00223005+0800,也可以簡化成223005+08

日期和時間的組合表示法

合併表示時,要在時間前面加一大寫字母T,如要表示東八區時間2004年5月3日下午5點30分8秒,可以寫成2004-05-03T17:30:08+08:0020040503T173008+08

時間段表示法

如果要表示某一作為一段時間間隔,前面加一大寫字母P,但時間段後都要加上相應的代表時間的大寫字母。如在一年三個月五天六小時七分三十秒內,可以寫成P1Y3M5DT6H7M30S

時間間隔表示法

從一個時間開始到另一個時間結束,或者從一個時間開始持續一個時間間隔,要在前後兩個時間(或時間間隔)之間放置斜線符"/"。格式為以下中的一種:

<起始時間>/<結束時間>
<起始時間>/<時長>
<時長>/<結束時間>
<時長>

例如19850412/19860101,19850412/P6M

循環時間表示法

前面加上一大寫字母R,格式為:

R【循環次數】【/開始時間】/時間間隔【/結束時間】

如要從2004年5月6日北京時間下午1點起時間間隔半年零5天3小時循環,且循環3次,可以表示為R3/20040506T130000+08/P0Y6M5DT3H0M0S

如以1年2個月為循環間隔,無限次循環,最後循環終止於2025年1月1日,可表示為R/P1Y2M/20250101

對應的各地標準


參考文獻

  1. last in ISO8601:2000, in use by RFC 6350 - vCard Format Specification. IETF. August 2011 [2016-06-29]. Truncated representation, as specified in [ISO.8601.2000], Sections 5.2.1.3 d), e), and f), is permitted.