一方、ローカライズされる書式とは異なり、ローカライズされない書式の書式指定子も用意されています。 これらの書式では、実行環境によらず常に同じ結果が得られます。

標準の書式指定子を使ってDateTime/DateTimeOffsetを文字列に変換する(ローカライズされない書式の例)
using System;

class Sample {
  static void Main()
  {
    DateTime dt = DateTime.Now;

    Console.WriteLine("r : {0}", dt.ToString("r"));  // RFC1123形式
    Console.WriteLine("o : {0}", dt.ToString("o"));  // ISO8601(W3C-DTF)形式
    Console.WriteLine("s : {0}", dt.ToString("s"));  // ISO8601形式に似た、ソートに適した形式
    Console.WriteLine("u : {0}", dt.ToString("u"));  // ISO8601形式に似た、ソートに適した形式 (UTC)
    Console.WriteLine();

    DateTimeOffset dto = DateTimeOffset.Now;

    Console.WriteLine("r : {0}", dto.ToString("r"));  // RFC1123形式
    Console.WriteLine("o : {0}", dto.ToString("o"));  // ISO8601(W3C-DTF)形式
    Console.WriteLine("s : {0}", dto.ToString("s"));  // ISO8601形式に似た、ソートに適した形式
    Console.WriteLine("u : {0}", dto.ToString("u"));  // ISO8601形式に似た、ソートに適した形式 (UTC)
    Console.WriteLine();
  }
}
実行結果例
r : Mon, 01 Apr 2013 15:00:30 GMT
o : 2013-04-01T15:00:30.1230000+09:00
s : 2013-04-01T15:00:30
u : 2013-04-01 15:00:30Z

r : Mon, 01 Apr 2013 06:00:30 GMT
o : 2013-04-01T15:00:30.1230000+09:00
s : 2013-04-01T15:00:30
u : 2013-04-01 06:00:30Z

このように標準の書式にはいくつかの種類があり、ローカライズされるものとそうでないものが存在します。 さらに、書式によってはUTCへの変換が行われた上で文字列化されるものもあります。 各書式のより詳細な解説については書式指定子 §.日付と時刻の書式指定子を参照してください。 また、書式とローカライズに関しては別途解説します。