2009-07-07 5 views
2

可能な限り多くのプラットフォームと言語で理解可能で解析可能な日付時刻書式文字列(おそらくUTC)を使用したいと思いますか?少なくともPHP、Python、Perl、Java、Rails、そしていくつかの一般的なC++ライブラリは、それを理解できるはずです。他のプラットフォームと最も互換性のある日付と時刻の形式はどれですか?

どちらを使用すればよいですか?

MSDNからのサンプル:ISO8601と

Culture:      English (United States) 

(d) Short date: . . . . . . . 4/17/2006 
(D) Long date:. . . . . . . . Monday, April 17, 2006 
(t) Short time: . . . . . . . 2:29 PM 
(T) Long time:. . . . . . . . 2:29:09 PM 
(f) Full date/short time: . . Monday, April 17, 2006 2:29 PM 
(F) Full date/long time:. . . Monday, April 17, 2006 2:29:09 PM 
(g) General date/short time:. 4/17/2006 2:29 PM 
(G) General date/long time (default): 
    . . . . . . . . . . . . . 4/17/2006 2:29:09 PM 
(M) Month:. . . . . . . . . . April 17 
(R) RFC1123:. . . . . . . . . Mon, 17 Apr 2006 21:29:09 GMT 
(s) Sortable: . . . . . . . . 2006-04-17T14:29:09 
(u) Universal sortable (invariant): 
    . . . . . . . . . . . . . 2006-04-17 21:29:09Z 
(U) Universal full date/time: Monday, April 17, 2006 9:29:09 PM 
(Y) Year: . . . . . . . . . . April, 2006 
(o) Roundtrip (local):. . . . 2006-04-17T14:29:09.3011250-07:00 
(o) Roundtrip (UTC):. . . . . 2006-04-17T21:29:09.3011250Z 
(o) Roundtrip (Unspecified):. 2000-03-20T13:02:03.0000000 

答えて

8

スティック、あなたは間違って行くことはできません。

好ましくは、YYYYMMDD HH:mm:ss [TZ]形式が最も広く使用されています。

内部の保存時間からアプリケーションのプレゼンテーションレイヤーで現地時間を切り離している場合は、間違いなく「カバーの下に」UTCがあります。

2

私はISO 8601、または単に1970年1月1日00:00からの秒数(unix_time ??)の形式にしています。あなたはいつでもそれを解析して所望の時間を得ることができます少しでも努力すれば)

3

ISO 8601は道のりです。便利な紹介については、this documentを参照してください。タイムゾーンと日付/時刻を指定したいと思うでしょう。

4

ラウンドトリップ形式は、ISO 8601に準拠しています。私はそれらを使用します。