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

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

Class Sample
  Shared Sub Main()
    Dim dt As DateTime = 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()

    Dim dto As DateTimeOffset = 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()
  End Sub
End Class
実行結果例
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への変換が行われた上で文字列化されるものもあります。 各書式のより詳細な解説については書式指定子 §.日付と時刻の書式指定子を参照してください。 また、書式とローカライズに関しては別途解説します。