次の C# コードがあるとします。
var dt = DateTime.Now;
Console.WriteLine("{0:MM/dd/yy} ... {1}", dt, string.Format("{0:MM/dd/yy}", dt));
...短い日付(Windows 7の下でControl Panel -> Region and Language -> Additonal Settings -> Date
)が「、」の米国標準に設定されている場合、次のM/d/yyyy
ようになります:
06/17/14 ... 06/17/14
ただし、短い日付を「 」に変更すると、次のddd dd MMM yyyy
ようになります。
06/17/14 ... 06 17 14
Console.WriteLine
私は、常にフォーマットされた値を同じようにstring.Format
文字列化するという印象を受けました。DateTime
この不一致の説明は何ですか?
編集:これは、最初に問題が発生した標準の単体テスト出力(Visual Studio)でのみ発生するようです。コンソール アプリでコードを実行すると、出力は06 17 14 ... 06 17 14
.