標準の日時書式指定文字列Standard Date and Time Format Strings

標準の日時書式指定文字列は、単一の書式指定子を使用して日付と時刻の値のテキスト表現を定義します。A standard date and time format string uses a single format specifier to define the text representation of a date and time value. 空白を含む複数の文字で構成される日時書式指定文字列は、カスタム日時書式指定文字列として解釈されます。詳細については、「カスタム日時書式指定文字列」をご覧ください。Any date and time format string that contains more than one character, including white space, is interpreted as a custom date and time format string; for more information, see Custom Date and Time Format Strings. 標準またはカスタムの書式指定文字列には、次の 2 とおりの使用方法があります。A standard or custom format string can be used in two ways:

  • 書式設定操作によって生成される文字列を定義する。To define the string that results from a formatting operation.

  • 解析操作によって DateTime 値または DateTimeOffset 値に変換できる日付と時刻の値のテキスト表現を定義する。To define the text representation of a date and time value that can be converted to a DateTime or DateTimeOffset value by a parsing operation.

ヒント

書式指定ユーティリティをダウンロードできます。このアプリケーションを使用すると、書式指定文字列を数値または日付と時刻の値に適用して、結果の文字列を表示できます。You can download the Formatting Utility, an application that enables you to apply format strings to either numeric or date and time values and displays the result string.

標準の日時書式指定文字列は、DateTime 値で使用することも、DateTimeOffset 値で使用することもできます。Standard date and time format strings can be used with both DateTime and DateTimeOffset values.

注意

The C# examples in this article run in the Try.NET inline code runner and playground. Select the Run button to run an example in an interactive window. Once you execute the code, you can modify it and run the modified code by selecting Run again. The modified code either runs in the interactive window or, if compilation fails, the interactive window displays all C# compiler error messages.

The local time zone of the Try.NET inline code runner and playground is Coordinated Universal Time, or UTC. This may affect the behavior and the output of examples that illustrate the DateTime, DateTimeOffset, and TimeZoneInfo types and their members.

標準日時書式指定子を次の表に示します。The following table describes the standard date and time format specifiers. 特に明記されない限り、特定の標準日時書式指定子は、DateTime 値で使用しても、DateTimeOffset 値で使用してもまったく同じ文字列形式を生成します。Unless otherwise noted, a particular standard date and time format specifier produces an identical string representation regardless of whether it is used with a DateTime or a DateTimeOffset value. 標準の日時書式指定文字列の使用方法については、「メモ」をご覧ください。See the Notes section for additional information about using standard date and time format strings.

書式指定子Format specifier 説明Description 使用例Examples
"d""d" 短い形式の日付パターン。Short date pattern.

詳細については、「短い形式の日付 ("d") 書式指定子」を参照してください。More information:The Short Date ("d") Format Specifier.
2009-06-15T13:45:30 -> 6/15/2009 (en-US)2009-06-15T13:45:30 -> 6/15/2009 (en-US)

2009-06-15T13:45:30 -> 15/06/2009 (fr-FR)2009-06-15T13:45:30 -> 15/06/2009 (fr-FR)

2009-06-15T13:45:30 -> 2009/06/15 (ja-JP)2009-06-15T13:45:30 -> 2009/06/15 (ja-JP)
"D""D" 長い形式の日付パターン。Long date pattern.

詳細については、「長い形式の日付 ("D") 書式指定子」を参照してください。More information:The Long Date ("D") Format Specifier.
2009-06-15T13:45:30 -> Monday, June 15, 2009 (en-US)2009-06-15T13:45:30 -> Monday, June 15, 2009 (en-US)

2009-06-15T13:45:30 -> 15 июня 2009 г.2009-06-15T13:45:30 -> 15 июня 2009 г. (ru-RU)(ru-RU)

2009-06-15T13:45:30 -> Montag, 15.2009-06-15T13:45:30 -> Montag, 15. Juni 2009 (de-DE)Juni 2009 (de-DE)
"f""f" 完全な日付と時刻のパターン (短い形式の時刻)。Full date/time pattern (short time).

詳細については、「完全な日付と短い形式の時刻 ("f") 書式指定子」を参照してください。More information: The Full Date Short Time ("f") Format Specifier.
2009-06-15T13:45:30 -> Monday, June 15, 2009 1:45 PM (en-US)2009-06-15T13:45:30 -> Monday, June 15, 2009 1:45 PM (en-US)

2009-06-15T13:45:30 -> den 15 juni 2009 13:45 (sv-SE)2009-06-15T13:45:30 -> den 15 juni 2009 13:45 (sv-SE)

2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45 μμ (el-GR)2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45 μμ (el-GR)
"F""F" 完全な日付と時刻のパターン (長い形式の時刻)。Full date/time pattern (long time).

詳細については、「完全な日付と長い形式の時刻 ("F") 書式指定子」を参照してください。More information: The Full Date Long Time ("F") Format Specifier.
2009-06-15T13:45:30 -> Monday, June 15, 2009 1:45:30 PM (en-US)2009-06-15T13:45:30 -> Monday, June 15, 2009 1:45:30 PM (en-US)

2009-06-15T13:45:30 -> den 15 juni 2009 13:45:30 (sv-SE)2009-06-15T13:45:30 -> den 15 juni 2009 13:45:30 (sv-SE)

2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45:30 μμ (el-GR)2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45:30 μμ (el-GR)
"g""g" 一般の日付と時刻のパターン (短い形式の時刻)。General date/time pattern (short time).

詳細については、「一般の日付と短い形式の時刻 ("g") 書式指定子」を参照してください。More information: The General Date Short Time ("g") Format Specifier.
2009-06-15T13:45:30 -> 6/15/2009 1:45 PM (en-US)2009-06-15T13:45:30 -> 6/15/2009 1:45 PM (en-US)

2009-06-15T13:45:30 -> 15/06/2009 13:45 (es-ES)2009-06-15T13:45:30 -> 15/06/2009 13:45 (es-ES)

2009-06-15T13:45:30 -> 2009/6/15 13:45 (zh-CN)2009-06-15T13:45:30 -> 2009/6/15 13:45 (zh-CN)
"G""G" 一般の日付と時刻のパターン (長い形式の時刻)。General date/time pattern (long time).

詳細については、「一般の日付と長い形式の時刻 ("G") 書式指定子」を参照してください。More information: The General Date Long Time ("G") Format Specifier.
2009-06-15T13:45:30 -> 6/15/2009 1:45:30 PM (en-US)2009-06-15T13:45:30 -> 6/15/2009 1:45:30 PM (en-US)

2009-06-15T13:45:30 -> 15/06/2009 13:45:30 (es-ES)2009-06-15T13:45:30 -> 15/06/2009 13:45:30 (es-ES)

2009-06-15T13:45:30 -> 2009/6/15 13:45:30 (zh-CN)2009-06-15T13:45:30 -> 2009/6/15 13:45:30 (zh-CN)
"M"、"m""M", "m" 月日パターン。Month/day pattern.

詳細については、「月 ("M"、"m") 書式指定子」を参照してください。More information: The Month ("M", "m") Format Specifier.
2009-06-15T13:45:30 -> June 15 (en-US)2009-06-15T13:45:30 -> June 15 (en-US)

2009-06-15T13:45:30 -> 15.2009-06-15T13:45:30 -> 15. juni (da-DK)juni (da-DK)

2009-06-15T13:45:30 -> 15 Juni (id-ID)2009-06-15T13:45:30 -> 15 Juni (id-ID)
"O"、"o""O", "o" ラウンドトリップする日付と時刻のパターン。Round-trip date/time pattern.

詳細については、「ラウンドトリップ ("O"、"o") 書式指定子」を参照してください。More information: The Round-trip ("O", "o") Format Specifier.
DateTime の値:DateTime values:

2009-06-15T13:45:30 (DateTimeKind.Local) --> 2009-06-15T13:45:30.0000000-07:002009-06-15T13:45:30 (DateTimeKind.Local) --> 2009-06-15T13:45:30.0000000-07:00

2009-06-15T13:45:30 (DateTimeKind.Utc) --> 2009-06-15T13:45:30.0000000Z2009-06-15T13:45:30 (DateTimeKind.Utc) --> 2009-06-15T13:45:30.0000000Z

2009-06-15T13:45:30 (DateTimeKind.Unspecified) --> 2009-06-15T13:45:30.00000002009-06-15T13:45:30 (DateTimeKind.Unspecified) --> 2009-06-15T13:45:30.0000000

DateTimeOffset の値:DateTimeOffset values:

2009-06-15T13:45:30-07:00 --> 2009-06-15T13:45:30.0000000-07:002009-06-15T13:45:30-07:00 --> 2009-06-15T13:45:30.0000000-07:00
"R"、"r""R", "r" RFC1123 パターン。RFC1123 pattern.

詳細については、「RFC1123 ("R"、"r") 書式指定子」を参照してください。More information: The RFC1123 ("R", "r") Format Specifier.
2009-06-15T13:45:30 -> Mon, 15 Jun 2009 20:45:30 GMT2009-06-15T13:45:30 -> Mon, 15 Jun 2009 20:45:30 GMT
"s""s" 並べ替え可能な日付と時刻のパターン。Sortable date/time pattern.

詳細については、「並べ替え可能な日付と時刻 ("s") 書式指定子」を参照してください。More information: The Sortable ("s") Format Specifier.
2009-06-15T13:45:30 (DateTimeKind.Local) -> 2009-06-15T13:45:302009-06-15T13:45:30 (DateTimeKind.Local) -> 2009-06-15T13:45:30

2009-06-15T13:45:30 (DateTimeKind.Utc) -> 2009-06-15T13:45:302009-06-15T13:45:30 (DateTimeKind.Utc) -> 2009-06-15T13:45:30
"t""t" 短い形式の時刻パターン。Short time pattern.

詳細については、「短い形式の時刻 ("t") 書式指定子」を参照してください。More information: The Short Time ("t") Format Specifier.
2009-06-15T13:45:30 -> 1:45 PM (en-US)2009-06-15T13:45:30 -> 1:45 PM (en-US)

2009-06-15T13:45:30 -> 13:45 (hr-HR)2009-06-15T13:45:30 -> 13:45 (hr-HR)

2009-06-15T13:45:30 -> 01:45 م (ar-EG)2009-06-15T13:45:30 -> 01:45 م (ar-EG)
"T""T" 長い形式の時刻パターン。Long time pattern.

詳細については、「長い形式の時刻 ("T") 書式指定子」を参照してください。More information: The Long Time ("T") Format Specifier.
2009-06-15T13:45:30 -> 1:45:30 PM (en-US)2009-06-15T13:45:30 -> 1:45:30 PM (en-US)

2009-06-15T13:45:30 -> 13:45:30 (hr-HR)2009-06-15T13:45:30 -> 13:45:30 (hr-HR)

2009-06-15T13:45:30 -> 01:45:30 م (ar-EG)2009-06-15T13:45:30 -> 01:45:30 م (ar-EG)
"u""u" 並べ替え可能な日付と時刻のパターン (世界時刻)。Universal sortable date/time pattern.

詳細については、「世界共通の並べ替え可能な日付と時刻 ("u") 書式指定子」を参照してください。More information: The Universal Sortable ("u") Format Specifier.
DateTime 値の場合: 2009-06-15T13:45:30 -> 2009-06-15 13:45:30ZWith a DateTime value: 2009-06-15T13:45:30 -> 2009-06-15 13:45:30Z

DateTimeOffset 値の場合: 2009-06-15T13:45:30 -> 2009-06-15 20:45:30ZWith a DateTimeOffset value: 2009-06-15T13:45:30 -> 2009-06-15 20:45:30Z
"U""U" 完全な日付と時刻のパターン (世界時刻)。Universal full date/time pattern.

詳細については、「世界共通の完全な日付と時刻 ("U") 書式指定子」を参照してください。More information: The Universal Full ("U") Format Specifier.
2009-06-15T13:45:30 -> Monday, June 15, 2009 8:45:30 PM (en-US)2009-06-15T13:45:30 -> Monday, June 15, 2009 8:45:30 PM (en-US)

2009-06-15T13:45:30 -> den 15 juni 2009 20:45:30 (sv-SE)2009-06-15T13:45:30 -> den 15 juni 2009 20:45:30 (sv-SE)

2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 8:45:30 μμ (el-GR)2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 8:45:30 μμ (el-GR)
"Y"、"y""Y", "y" 年月パターン。Year month pattern.

詳細については、「年月 ("Y") 書式指定子」を参照してください。More information: The Year Month ("Y") Format Specifier.
2009-06-15T13:45:30 -> June, 2009 (en-US)2009-06-15T13:45:30 -> June, 2009 (en-US)

2009-06-15T13:45:30 -> juni 2009 (da-DK)2009-06-15T13:45:30 -> juni 2009 (da-DK)

2009-06-15T13:45:30 -> Juni 2009 (id-ID)2009-06-15T13:45:30 -> Juni 2009 (id-ID)
その他の 1 文字Any other single character 未定義の指定子。Unknown specifier. ランタイム FormatException をスローします。Throws a run-time FormatException.

標準書式指定文字列の動作How Standard Format Strings Work

書式設定操作では、標準書式指定文字列はカスタム書式指定文字列のエイリアスにすぎません。In a formatting operation, a standard format string is simply an alias for a custom format string. エイリアスを使ってカスタム書式指定文字列を表すことの利点は、カスタム書式指定文字列はそれ自体が変化する場合があるのに対し、エイリアスは不変であるという点です。The advantage of using an alias to refer to a custom format string is that, although the alias remains invariant, the custom format string itself can vary. 通常、日付と時刻の値の文字列形式はカルチャによって変わるため、この点は重要です。This is important because the string representations of date and time values typically vary by culture. たとえば、"d" 標準書式指定文字列は、日付と時刻の値を短い日付形式のパターンで表示することを意味します。For example, the "d" standard format string indicates that a date and time value is to be displayed using a short date pattern. インバリアント カルチャでは、このパターンは "MM/dd/yyyy" になります。For the invariant culture, this pattern is "MM/dd/yyyy". fr-FR カルチャでは、これが "dd/MM/yyyy" になります。For the fr-FR culture, it is "dd/MM/yyyy". ja-JP カルチャでは、これが "yyyy/MM/dd" になります。For the ja-JP culture, it is "yyyy/MM/dd".

書式設定操作の標準書式指定文字列が特定のカルチャのカスタム書式指定文字列に対応付けられている場合は、使用するカスタム書式指定文字列に該当するカルチャを次のいずれかの方法で定義できます。If a standard format string in a formatting operation maps to a particular culture's custom format string, your application can define the specific culture whose custom format strings are used in one of these ways:

  • 既定の (現在の) カルチャを使用できます。You can use the default (or current) culture. 次の例では、現在のカルチャの短い日付形式を使って日付を表示します。The following example displays a date using the current culture's short date format. この場合、現在のカルチャは en-US です。In this case, the current culture is en-US.

    // Display using current (en-us) culture's short date format
    DateTime thisDate = new DateTime(2008, 3, 15);
    Console.WriteLine(thisDate.ToString("d"));           // Displays 3/15/2008
    
    ' Display using current (en-us) culture's short date format
    Dim thisDate As Date = #03/15/2008#
    Console.WriteLine(thisDate.ToString("d"))     ' Displays 3/15/2008
    
  • 使用する書式のカルチャを表す CultureInfo オブジェクトを、IFormatProvider パラメーターを持つメソッドに渡すことができます。You can pass a CultureInfo object representing the culture whose formatting is to be used to a method that has an IFormatProvider parameter. 次の例では、pt-BR カルチャの短い日付形式を使って日付を表示します。The following example displays a date using the short date format of the pt-BR culture.

    // Display using pt-BR culture's short date format
    DateTime thisDate = new DateTime(2008, 3, 15);
    CultureInfo culture = new CultureInfo("pt-BR");      
    Console.WriteLine(thisDate.ToString("d", culture));  // Displays 15/3/2008
    
    ' Display using pt-BR culture's short date format
    Dim thisDate As Date = #03/15/2008#
    Dim culture As New CultureInfo("pt-BR")      
    Console.WriteLine(thisDate.ToString("d", culture))   ' Displays 15/3/2008
    
  • 書式情報を提供する DateTimeFormatInfo オブジェクトを、IFormatProvider パラメーターを持つメソッドに渡すことができます。You can pass a DateTimeFormatInfo object that provides formatting information to a method that has an IFormatProvider parameter. 次の例では、hr-HR カルチャの DateTimeFormatInfo オブジェクトに基づく短い日付形式で日付を表示します。The following example displays a date using the short date format from a DateTimeFormatInfo object for the hr-HR culture.

    // Display using date format information from hr-HR culture
    DateTime thisDate = new DateTime(2008, 3, 15);
    DateTimeFormatInfo fmt = (new CultureInfo("hr-HR")).DateTimeFormat;
    Console.WriteLine(thisDate.ToString("d", fmt));      // Displays 15.3.2008
    
    ' Display using date format information from hr-HR culture
    Dim thisDate As Date = #03/15/2008#
    Dim fmt As DateTimeFormatInfo = (New CultureInfo("hr-HR")).DateTimeFormat
    Console.WriteLine(thisDate.ToString("d", fmt))   ' Displays 15.3.2008
    

注意

日付と時刻の値の書式設定に使用するパターンまたは文字列のカスタマイズの詳細については、NumberFormatInfo クラスに関するトピックを参照してください。For information about customizing the patterns or strings used in formatting date and time values, see the NumberFormatInfo class topic.

標準書式指定文字列には、長いカスタム書式指定文字列に代わる、不変の省略形としての利用価値もあります。In some cases, the standard format string serves as a convenient abbreviation for a longer custom format string that is invariant. このカテゴリに該当する標準書式指定文字列は、"O" (または "o")、"R" (または "r")、"s"、"u" の 4 つです。Four standard format strings fall into this category: "O" (or "o"), "R" (or "r"), "s", and "u". これらの文字列は、インバリアント カルチャで定義されたカスタム書式指定文字列に対応します。These strings correspond to custom format strings defined by the invariant culture. これらの書式指定文字列によって生成される日時値の文字列形式は、カルチャに関係なく一定です。They produce string representations of date and time values that are intended to be identical across cultures. 次の表で、この 4 つの標準日時書式指定文字列について説明します。The following table provides information on these four standard date and time format strings.

標準書式指定文字列Standard format string DateTimeFormatInfo.InvariantInfo プロパティによる定義Defined by DateTimeFormatInfo.InvariantInfo property カスタム書式指定文字列Custom format string
"O" または "o""O" or "o" なしNone yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzyyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzz
"R" または "r""R" or "r" RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT'ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
"s""s" SortableDateTimePattern yyyy'-'MM'-'dd'T'HH':'mm':'ssyyyy'-'MM'-'dd'T'HH':'mm':'ss
"u""u" UniversalSortableDateTimePattern yyyy'-'MM'-'dd HH':'mm':'ss'Z'yyyy'-'MM'-'dd HH':'mm':'ss'Z'

標準書式指定文字列は、解析操作の DateTime.ParseExact メソッドまたは DateTimeOffset.ParseExact メソッドで使用することもできます。これらのメソッドでは、解析操作が成功するための特定のパターンに入力文字列が完全に一致している必要があります。Standard format strings can also be used in parsing operations with the DateTime.ParseExact or DateTimeOffset.ParseExact methods, which require an input string to exactly conform to a particular pattern for the parse operation to succeed. 標準書式指定文字列の多くは複数のカスタム書式指定文字列に対応付けられるため、日付と時刻の値はさまざまな書式で表されることがありますが、解析操作は成功します。Many standard format strings map to multiple custom format strings, so a date and time value can be represented in a variety of formats and the parse operation will still succeed. DateTimeFormatInfo.GetAllDateTimePatterns(Char) メソッドを呼び出すことにより、標準書式指定文字列に対応する 1 つまたは複数のカスタム書式指定文字列を確認できます。You can determine the custom format string or strings that correspond to a standard format string by calling the DateTimeFormatInfo.GetAllDateTimePatterns(Char) method. 次の例では、"d" (短い日付形式のパターン) 標準書式指定文字列に対応付けられているカスタム書式指定文字列を表示します。The following example displays the custom format strings that map to the "d" (short date pattern) standard format string.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("'d' standard format string:");
      foreach (var customString in DateTimeFormatInfo.CurrentInfo.GetAllDateTimePatterns('d'))
          Console.WriteLine("   {0}", customString);
   }
}
// The example displays the following output:
//       'd' standard format string:
//          M/d/yyyy
//          M/d/yy
//          MM/dd/yy
//          MM/dd/yyyy
//          yy/MM/dd
//          yyyy-MM-dd
//          dd-MMM-yy
Imports System.Globalization

Module Example
   Public Sub Main()
      Console.WriteLine("'d' standard format string:")
      For Each customString In DateTimeFormatInfo.CurrentInfo.GetAllDateTimePatterns("d"c)
          Console.WriteLine("   {0}", customString)
      Next                                  
   End Sub
End Module
' The example displays the following output:
'    'd' standard format string:
'       M/d/yyyy
'       M/d/yy
'       MM/dd/yy
'       MM/dd/yyyy
'       yy/MM/dd
'       yyyy-MM-dd
'       dd-MMM-yy

以降では、DateTime 値および DateTimeOffset 値の標準書式指定子について説明します。The following sections describe the standard format specifiers for DateTime and DateTimeOffset values.

短い形式の日付 ("d") 書式指定子The Short Date ("d") Format Specifier

"d" 標準書式指定子は、特定のカルチャの DateTimeFormatInfo.ShortDatePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "d" standard format specifier represents a custom date and time format string that is defined by a specific culture's DateTimeFormatInfo.ShortDatePattern property. たとえば、インバリアント カルチャの ShortDatePattern プロパティによって返されるカスタム書式指定文字列は "MM/dd/yyyy" です。For example, the custom format string that is returned by the ShortDatePattern property of the invariant culture is "MM/dd/yyyy".

返される文字列の書式を制御する DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that control the formatting of the returned string.

プロパティProperty 説明Description
ShortDatePattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
DateSeparator 日付の構成要素、つまり年、月、および日を区切る文字列を定義します。Defines the string that separates the year, month, and day components of a date.

次の例では、"d" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "d" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008,4, 10);
Console.WriteLine(date1.ToString("d", DateTimeFormatInfo.InvariantInfo));
// Displays 04/10/2008
Console.WriteLine(date1.ToString("d", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays 4/10/2008                       
Console.WriteLine(date1.ToString("d", 
                  CultureInfo.CreateSpecificCulture("en-NZ")));
// Displays 10/04/2008                       
Console.WriteLine(date1.ToString("d", 
                  CultureInfo.CreateSpecificCulture("de-DE")));
// Displays 10.04.2008                       
Dim date1 As Date = #4/10/2008#
Console.WriteLine(date1.ToString("d", DateTimeFormatInfo.InvariantInfo))
' Displays 04/10/2008
Console.WriteLine(date1.ToString("d", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays 4/10/2008                       
Console.WriteLine(date1.ToString("d", _
                  CultureInfo.CreateSpecificCulture("en-NZ")))
' Displays 10/04/2008                       
Console.WriteLine(date1.ToString("d", _
                  CultureInfo.CreateSpecificCulture("de-DE")))
' Displays 10.04.2008                       

表のトップへBack to table

長い形式の日付 ("D") 書式指定子The Long Date ("D") Format Specifier

"D" 標準書式指定子は、現在の DateTimeFormatInfo.LongDatePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "D" standard format specifier represents a custom date and time format string that is defined by the current DateTimeFormatInfo.LongDatePattern property. たとえば、インバリアント カルチャのカスタム書式指定文字列は "dddd, dd MMMM yyyy" です。For example, the custom format string for the invariant culture is "dddd, dd MMMM yyyy".

返される文字列の書式を制御する DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the properties of the DateTimeFormatInfo object that control the formatting of the returned string.

プロパティProperty 説明Description
LongDatePattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
DayNames 結果文字列に含まれるローカライズされた日付の名前を定義します。Defines the localized day names that can appear in the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.

次の例では、"D" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "D" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10);
Console.WriteLine(date1.ToString("D", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Thursday, April 10, 2008                        
Console.WriteLine(date1.ToString("D", 
                  CultureInfo.CreateSpecificCulture("pt-BR")));
// Displays quinta-feira, 10 de abril de 2008                        
Console.WriteLine(date1.ToString("D", 
                  CultureInfo.CreateSpecificCulture("es-MX")));
// Displays jueves, 10 de abril de 2008                        
Dim date1 As Date = #4/10/2008#
Console.WriteLine(date1.ToString("D", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Thursday, April 10, 2008                        
Console.WriteLine(date1.ToString("D", _
                  CultureInfo.CreateSpecificCulture("pt-BR")))
' Displays quinta-feira, 10 de abril de 2008                        
Console.WriteLine(date1.ToString("D", _
                  CultureInfo.CreateSpecificCulture("es-MX")))
' Displays jueves, 10 de abril de 2008                        

表のトップへBack to table

完全な日付と短い形式の時刻 ("f") 書式指定子The Full Date Short Time ("f") Format Specifier

"f" 標準書式指定子は、長い形式の日付 ("D") パターンと短い形式の時刻 ("t") パターンを空白で区切って組み合わせて表します。The "f" standard format specifier represents a combination of the long date ("D") and short time ("t") patterns, separated by a space.

結果文字列は、特定の DateTimeFormatInfo オブジェクトの書式情報に影響されます。The result string is affected by the formatting information of a specific DateTimeFormatInfo object. 返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの DateTimeFormatInfo.LongDatePattern プロパティおよび DateTimeFormatInfo.ShortTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier returned by the DateTimeFormatInfo.LongDatePattern and DateTimeFormatInfo.ShortTimePattern properties of some cultures may not make use of all properties.

プロパティProperty 説明Description
LongDatePattern 結果文字列の日付要素の書式を定義します。Defines the format of the date component of the result string.
ShortTimePattern 結果文字列の時刻要素の書式を定義します。Defines the format of the time component of the result string.
DayNames 結果文字列に含まれるローカライズされた日付の名前を定義します。Defines the localized day names that can appear in the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"f" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "f" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("f", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Thursday, April 10, 2008 6:30 AM                        
Console.WriteLine(date1.ToString("f", 
                  CultureInfo.CreateSpecificCulture("fr-FR")));
// Displays jeudi 10 avril 2008 06:30                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("f", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Thursday, April 10, 2008 6:30 AM                        
Console.WriteLine(date1.ToString("f", _
                  CultureInfo.CreateSpecificCulture("fr-FR")))
' Displays jeudi 10 avril 2008 06:30                       

表のトップへBack to table

完全な日付と長い形式の時刻 ("F") 書式指定子The Full Date Long Time ("F") Format Specifier

"F" 標準書式指定子は、現在の DateTimeFormatInfo.FullDateTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "F" standard format specifier represents a custom date and time format string that is defined by the current DateTimeFormatInfo.FullDateTimePattern property. たとえば、インバリアント カルチャのカスタム書式指定文字列は "dddd, dd MMMM yyyy HH:mm:ss" です。For example, the custom format string for the invariant culture is "dddd, dd MMMM yyyy HH:mm:ss".

返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの FullDateTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the FullDateTimePattern property of some cultures may not make use of all properties.

プロパティProperty 説明Description
FullDateTimePattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
DayNames 結果文字列に含まれるローカライズされた日付の名前を定義します。Defines the localized day names that can appear in the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"F" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "F" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("F", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Thursday, April 10, 2008 6:30:00 AM                        
Console.WriteLine(date1.ToString("F", 
                  CultureInfo.CreateSpecificCulture("fr-FR")));
// Displays jeudi 10 avril 2008 06:30:00                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("F", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Thursday, April 10, 2008 6:30:00 AM                        
Console.WriteLine(date1.ToString("F", _
                  CultureInfo.CreateSpecificCulture("fr-FR")))
' Displays jeudi 10 avril 2008 06:30:00                       

表のトップへBack to table

一般の日付と短い形式の時刻 ("g") 書式指定子The General Date Short Time ("g") Format Specifier

"g" 標準書式指定子は、短い形式の日付 ("d") パターンと短い形式の時刻 ("t") パターンを空白で区切って組み合わせて表します。The "g" standard format specifier represents a combination of the short date ("d") and short time ("t") patterns, separated by a space.

結果文字列は、特定の DateTimeFormatInfo オブジェクトの書式情報に影響されます。The result string is affected by the formatting information of a specific DateTimeFormatInfo object. 返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの DateTimeFormatInfo.ShortDatePattern プロパティおよび DateTimeFormatInfo.ShortTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the DateTimeFormatInfo.ShortDatePattern and DateTimeFormatInfo.ShortTimePattern properties of some cultures may not make use of all properties.

プロパティProperty 説明Description
ShortDatePattern 結果文字列の日付要素の書式を定義します。Defines the format of the date component of the result string.
ShortTimePattern 結果文字列の時刻要素の書式を定義します。Defines the format of the time component of the result string.
DateSeparator 日付の構成要素、つまり年、月、および日を区切る文字列を定義します。Defines the string that separates the year, month, and day components of a date.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"g" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "g" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("g", 
                  DateTimeFormatInfo.InvariantInfo));
// Displays 04/10/2008 06:30                      
Console.WriteLine(date1.ToString("g", 
                  CultureInfo.CreateSpecificCulture("en-us")));
// Displays 4/10/2008 6:30 AM                       
Console.WriteLine(date1.ToString("g", 
                  CultureInfo.CreateSpecificCulture("fr-BE")));
// Displays 10/04/2008 6:30                        
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("g", _
                  DateTimeFormatInfo.InvariantInfo))
' Displays 04/10/2008 06:30                      
Console.WriteLine(date1.ToString("g", _
                  CultureInfo.CreateSpecificCulture("en-us")))
' Displays 4/10/2008 6:30 AM                       
Console.WriteLine(date1.ToString("g", _
                  CultureInfo.CreateSpecificCulture("fr-BE")))
' Displays 10/04/2008 6:30                        

表のトップへBack to table

一般の日付と長い形式の時刻 ("G") 書式指定子The General Date Long Time ("G") Format Specifier

"G" 標準書式指定子は、短い形式の日付 ("d") パターンと長い形式の時刻 ("T") パターンを空白で区切って組み合わせて表します。The "G" standard format specifier represents a combination of the short date ("d") and long time ("T") patterns, separated by a space.

結果文字列は、特定の DateTimeFormatInfo オブジェクトの書式情報に影響されます。The result string is affected by the formatting information of a specific DateTimeFormatInfo object. 返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの DateTimeFormatInfo.ShortDatePattern プロパティおよび DateTimeFormatInfo.LongTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the DateTimeFormatInfo.ShortDatePattern and DateTimeFormatInfo.LongTimePattern properties of some cultures may not make use of all properties.

プロパティProperty 説明Description
ShortDatePattern 結果文字列の日付要素の書式を定義します。Defines the format of the date component of the result string.
LongTimePattern 結果文字列の時刻要素の書式を定義します。Defines the format of the time component of the result string.
DateSeparator 日付の構成要素、つまり年、月、および日を区切る文字列を定義します。Defines the string that separates the year, month, and day components of a date.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"G" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "G" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("G", 
                  DateTimeFormatInfo.InvariantInfo));
// Displays 04/10/2008 06:30:00
Console.WriteLine(date1.ToString("G", 
                  CultureInfo.CreateSpecificCulture("en-us")));
// Displays 4/10/2008 6:30:00 AM                        
Console.WriteLine(date1.ToString("G", 
                  CultureInfo.CreateSpecificCulture("nl-BE")));
// Displays 10/04/2008 6:30:00                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("G", _
                  DateTimeFormatInfo.InvariantInfo))
' Displays 04/10/2008 06:30:00
Console.WriteLine(date1.ToString("G", _
                  CultureInfo.CreateSpecificCulture("en-us")))
' Displays 4/10/2008 6:30:00 AM                        
Console.WriteLine(date1.ToString("G", _
                  CultureInfo.CreateSpecificCulture("nl-BE")))
' Displays 10/04/2008 6:30:00                       

表のトップへBack to table

月 ("M"、"m") 書式指定子The Month ("M", "m") Format Specifier

"M" または "m" 標準書式指定子は、現在の DateTimeFormatInfo.MonthDayPattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "M" or "m" standard format specifier represents a custom date and time format string that is defined by the current DateTimeFormatInfo.MonthDayPattern property. たとえば、インバリアント カルチャのカスタム書式指定文字列は "MMMM dd" です。For example, the custom format string for the invariant culture is "MMMM dd".

返される文字列の書式を制御する DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that control the formatting of the returned string.

プロパティProperty 説明Description
MonthDayPattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.

次の例では、"m" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "m" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("m", 
                  CultureInfo.CreateSpecificCulture("en-us")));
// Displays April 10                        
Console.WriteLine(date1.ToString("m", 
                  CultureInfo.CreateSpecificCulture("ms-MY")));
// Displays 10 April                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("m", _
                  CultureInfo.CreateSpecificCulture("en-us")))
' Displays April 10                        
Console.WriteLine(date1.ToString("m", _
                  CultureInfo.CreateSpecificCulture("ms-MY")))
' Displays 10 April                       

表のトップへBack to table

ラウンドトリップ ("O"、"o") 書式指定子The Round-trip ("O", "o") Format Specifier

"O" または "o" 標準書式指定子は、タイム ゾーン情報を保持するパターンを使用するカスタム日時書式指定文字列を表し、ISO 8601 に準拠する結果文字列を生成します。The "O" or "o" standard format specifier represents a custom date and time format string using a pattern that preserves time zone information and emits a result string that complies with ISO 8601. この書式指定子は、DateTime 値の日付と時刻の値を、DateTime.Kind プロパティと共にテキストとして保持できるように設計されています。For DateTime values, this format specifier is designed to preserve date and time values along with the DateTime.Kind property in text. DateTime.Parse(String, IFormatProvider, DateTimeStyles) パラメーターが DateTime.ParseExact に設定されている場合は、styles メソッドまたは DateTimeStyles.RoundtripKind メソッドを使用して、書式設定された文字列を変換前の文字列に戻すことができます。The formatted string can be parsed back by using the DateTime.Parse(String, IFormatProvider, DateTimeStyles) or DateTime.ParseExact method if the styles parameter is set to DateTimeStyles.RoundtripKind.

"O" または "o" 標準書式指定子は、DateTime 値の "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK" カスタム書式指定文字列と DateTimeOffset 値の "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzz" カスタム書式指定文字列に対応します。The "O" or "o" standard format specifier corresponds to the "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK" custom format string for DateTime values and to the "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzz" custom format string for DateTimeOffset values. この文字列の中で、個々の文字 (ハイフン、コロン、アルファベットの "T" など) を区切る一対の単一引用符は、各文字がリテラルであって変更できないことを示します。In this string, the pairs of single quotation marks that delimit individual characters, such as the hyphens, the colons, and the letter "T", indicate that the individual character is a literal that cannot be changed. アポストロフィは、出力された文字列には現れません。The apostrophes do not appear in the output string.

"O" または "o" 標準書式指定子 (および "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK" カスタム書式指定文字列) は、Kind 値の DateTime プロパティを保持するため、ISO 8601 の 3 種類のタイム ゾーン情報表記形式を利用します。The "O" or "o" standard format specifier (and the "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK" custom format string) takes advantage of the three ways that ISO 8601 represents time zone information to preserve the Kind property of DateTime values:

  • DateTimeKind.Local 日時値のタイム ゾーン コンポーネントは、UTC からのオフセットです (例:+01:00、-07:00)。The time zone component of DateTimeKind.Local date and time values is an offset from UTC (for example, +01:00, -07:00). DateTimeOffset のすべての値もこの形式で表記されます。All DateTimeOffset values are also represented in this format.

  • DateTimeKind.Utc 日時値のタイム ゾーン コンポーネントは、"Z" (ゼロ オフセットを示す) を使用して UTC を表記します。The time zone component of DateTimeKind.Utc date and time values uses "Z" (which stands for zero offset) to represent UTC.

  • DateTimeKind.Unspecified 日時値にはタイム ゾーン情報はありません。DateTimeKind.Unspecified date and time values have no time zone information.

"O" または "o" 標準書式指定子は国際基準に準拠しているため、この指定子を使用する書式設定操作または解析操作では常に、インバリアント カルチャとグレゴリオ暦が使用されます。Because the O" or "o" standard format specifier conforms to an international standard, the formatting or parsing operation that uses the specifier always uses the invariant culture and the Gregorian calendar.

ParseTryParseParseExactTryParseExactDateTime、および DateTimeOffset メソッドに渡される文字列が、これらの書式で表記される場合には、書式指定子 "O" または "o" を使用して解析できます。Strings that are passed to the Parse, TryParse, ParseExact, and TryParseExact methods of DateTime and DateTimeOffset can be parsed by using the "O" or "o" format specifier if they are in one of these formats. DateTime オブジェクトの場合、呼び出す解析オーバーロードの styles パラメーターに値 DateTimeStyles.RoundtripKind が指定されている必要があります。In the case of DateTime objects, the parsing overload that you call should also include a styles parameter with a value of DateTimeStyles.RoundtripKind. "O" または "o" 書式指定子に対応するカスタム書式文字列を使用して解析メソッドを呼び出した結果は、"O" または "o" を使用した場合の結果と同じではないことに注意してください。Note that if you call a parsing method with the custom format string that corresponds to the "O" or "o" format specifier, you won't get the same results as "O" or "o". これは、カスタム書式文字列を使用する解析メソッドでは、タイム ゾーン コンポーネントがない日時値または "Z" を使用して UTC を示している日時値の文字列形式を解析できないためです。This is because parsing methods that use a custom format string can't parse the string representation of date and time values that lack a time zone component or use "Z" to indicate UTC.

次の例では、米国太平洋標準時タイム ゾーンのシステム上で "o" 書式指定子を使用して、一連の DateTime 値および DateTimeOffset 値を表示します。The following example uses the "o" format specifier to display a series of DateTime values and a DateTimeOffset value on a system in the U.S. Pacific Time zone.

using System;

public class Example
{
   public static void Main()
   {
       DateTime dat = new DateTime(2009, 6, 15, 13, 45, 30, 
                                   DateTimeKind.Unspecified);
       Console.WriteLine("{0} ({1}) --> {0:O}", dat, dat.Kind); 
   
       DateTime uDat = new DateTime(2009, 6, 15, 13, 45, 30, 
                                    DateTimeKind.Utc);
       Console.WriteLine("{0} ({1}) --> {0:O}", uDat, uDat.Kind);
       
       DateTime lDat = new DateTime(2009, 6, 15, 13, 45, 30, 
                                    DateTimeKind.Local);
       Console.WriteLine("{0} ({1}) --> {0:O}\n", lDat, lDat.Kind);
       
       DateTimeOffset dto = new DateTimeOffset(lDat);
       Console.WriteLine("{0} --> {0:O}", dto);
   }
}
// The example displays the following output:
//    6/15/2009 1:45:30 PM (Unspecified) --> 2009-06-15T13:45:30.0000000
//    6/15/2009 1:45:30 PM (Utc) --> 2009-06-15T13:45:30.0000000Z
//    6/15/2009 1:45:30 PM (Local) --> 2009-06-15T13:45:30.0000000-07:00
//    
//    6/15/2009 1:45:30 PM -07:00 --> 2009-06-15T13:45:30.0000000-07:00
Module Example
   Public Sub Main()
       Dim dat As New Date(2009, 6, 15, 13, 45, 30, 
                           DateTimeKind.Unspecified)
       Console.WriteLine("{0} ({1}) --> {0:O}", dat, dat.Kind) 
   
       Dim uDat As New Date(2009, 6, 15, 13, 45, 30, DateTimeKind.Utc)
       Console.WriteLine("{0} ({1}) --> {0:O}", uDat, uDat.Kind)
       
       Dim lDat As New Date(2009, 6, 15, 13, 45, 30, DateTimeKind.Local)
       Console.WriteLine("{0} ({1}) --> {0:O}", lDat, lDat.Kind)
       Console.WriteLine()
       
       Dim dto As New DateTimeOffset(lDat)
       Console.WriteLine("{0} --> {0:O}", dto)
   End Sub
End Module
' The example displays the following output:
'    6/15/2009 1:45:30 PM (Unspecified) --> 2009-06-15T13:45:30.0000000
'    6/15/2009 1:45:30 PM (Utc) --> 2009-06-15T13:45:30.0000000Z
'    6/15/2009 1:45:30 PM (Local) --> 2009-06-15T13:45:30.0000000-07:00
'    
'    6/15/2009 1:45:30 PM -07:00 --> 2009-06-15T13:45:30.0000000-07:00

次の例では、"o" 書式指定子を使用して書式設定された文字列を作成し、日付および時刻の Parse メソッドを呼び出して元の日時値を復元します。The following example uses the "o" format specifier to create a formatted string, and then restores the original date and time value by calling a date and time Parse method.

// Round-trip DateTime values.
DateTime originalDate, newDate;
string dateString;
// Round-trip a local time.
originalDate = DateTime.SpecifyKind(new DateTime(2008, 4, 10, 6, 30, 0), DateTimeKind.Local);
dateString = originalDate.ToString("o");
newDate = DateTime.Parse(dateString, null, DateTimeStyles.RoundtripKind);
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, 
                  newDate, newDate.Kind);
// Round-trip a UTC time.
originalDate = DateTime.SpecifyKind(new DateTime(2008, 4, 12, 9, 30, 0), DateTimeKind.Utc);                  
dateString = originalDate.ToString("o");
newDate = DateTime.Parse(dateString, null, DateTimeStyles.RoundtripKind);
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, 
                  newDate, newDate.Kind);
// Round-trip time in an unspecified time zone.
originalDate = DateTime.SpecifyKind(new DateTime(2008, 4, 13, 12, 30, 0), DateTimeKind.Unspecified);                  
dateString = originalDate.ToString("o");
newDate = DateTime.Parse(dateString, null, DateTimeStyles.RoundtripKind);
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, 
                  newDate, newDate.Kind);

// Round-trip a DateTimeOffset value.
DateTimeOffset originalDTO = new DateTimeOffset(2008, 4, 12, 9, 30, 0, new TimeSpan(-8, 0, 0));
dateString = originalDTO.ToString("o");
DateTimeOffset newDTO = DateTimeOffset.Parse(dateString, null, DateTimeStyles.RoundtripKind);
Console.WriteLine("Round-tripped {0} to {1}.", originalDTO, newDTO);
// The example displays the following output:
//    Round-tripped 4/10/2008 6:30:00 AM Local to 4/10/2008 6:30:00 AM Local.
//    Round-tripped 4/12/2008 9:30:00 AM Utc to 4/12/2008 9:30:00 AM Utc.
//    Round-tripped 4/13/2008 12:30:00 PM Unspecified to 4/13/2008 12:30:00 PM Unspecified.
//    Round-tripped 4/12/2008 9:30:00 AM -08:00 to 4/12/2008 9:30:00 AM -08:00.
' Round-trip DateTime values.
Dim originalDate, newDate As Date
Dim dateString As String
' Round-trip a local time.
originalDate = Date.SpecifyKind(#4/10/2008 6:30AM#, DateTimeKind.Local)
dateString = originalDate.ToString("o")
newDate = Date.Parse(dateString, Nothing, DateTimeStyles.RoundtripKind)
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, _
                  newDate, newDate.Kind)
' Round-trip a UTC time.
originalDate = Date.SpecifyKind(#4/12/2008 9:30AM#, DateTimeKind.Utc)                  
dateString = originalDate.ToString("o")
newDate = Date.Parse(dateString, Nothing, DateTimeStyles.RoundtripKind)
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, _
                  newDate, newDate.Kind)
' Round-trip time in an unspecified time zone.
originalDate = Date.SpecifyKind(#4/13/2008 12:30PM#, DateTimeKind.Unspecified)                  
dateString = originalDate.ToString("o")
newDate = Date.Parse(dateString, Nothing, DateTimeStyles.RoundtripKind)
Console.WriteLine("Round-tripped {0} {1} to {2} {3}.", originalDate, originalDate.Kind, _
                  newDate, newDate.Kind)

' Round-trip a DateTimeOffset value.
Dim originalDTO As New DateTimeOffset(#4/12/2008 9:30AM#, New TimeSpan(-8, 0, 0))
dateString = originalDTO.ToString("o")
Dim newDTO As DateTimeOffset = DateTimeOffset.Parse(dateString, Nothing, DateTimeStyles.RoundtripKind)
Console.WriteLine("Round-tripped {0} to {1}.", originalDTO, newDTO)
' The example displays the following output:
'    Round-tripped 4/10/2008 6:30:00 AM Local to 4/10/2008 6:30:00 AM Local.
'    Round-tripped 4/12/2008 9:30:00 AM Utc to 4/12/2008 9:30:00 AM Utc.
'    Round-tripped 4/13/2008 12:30:00 PM Unspecified to 4/13/2008 12:30:00 PM Unspecified.
'    Round-tripped 4/12/2008 9:30:00 AM -08:00 to 4/12/2008 9:30:00 AM -08:00.

表のトップへBack to table

RFC1123 ("R"、"r") 書式指定子The RFC1123 ("R", "r") Format Specifier

"R" または "r" 標準書式指定子は、DateTimeFormatInfo.RFC1123Pattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "R" or "r" standard format specifier represents a custom date and time format string that is defined by the DateTimeFormatInfo.RFC1123Pattern property. このパターンは定義済みの標準を反映し、プロパティは読み取り専用です。The pattern reflects a defined standard, and the property is read-only. したがって、使用されるカルチャまたは指定された書式プロバイダーに関係なく、常に同じです。Therefore, it is always the same, regardless of the culture used or the format provider supplied. カスタム書式指定文字列は、"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'" です。The custom format string is "ddd, dd MMM yyyy HH':'mm':'ss 'GMT'". この標準書式指定子を使用した場合、書式設定操作または解析操作で常にインバリアント カルチャが使用されます。When this standard format specifier is used, the formatting or parsing operation always uses the invariant culture.

結果文字列は、インバリアント カルチャを表す DateTimeFormatInfo プロパティによって返される DateTimeFormatInfo.InvariantInfo オブジェクトの次のプロパティに影響されます。The result string is affected by the following properties of the DateTimeFormatInfo object returned by the DateTimeFormatInfo.InvariantInfo property that represents the invariant culture.

プロパティProperty 説明Description
RFC1123Pattern 結果文字列の書式を定義します。Defines the format of the result string.
AbbreviatedDayNames 結果文字列に含まれる日付の省略名を定義します。Defines the abbreviated day names that can appear in the result string.
AbbreviatedMonthNames 結果文字列に含まれる月の省略名を定義します。Defines the abbreviated month names that can appear in the result string.

RFC 1123 標準では、時刻は世界協定時刻 (UTC: Coordinated Universal Time) で表されますが、書式設定操作では、書式設定される DateTime オブジェクトの値は変更されません。Although the RFC 1123 standard expresses a time as Coordinated Universal Time (UTC), the formatting operation does not modify the value of the DateTime object that is being formatted. そのため、書式設定操作を行う前に DateTime メソッドを呼び出して、DateTime.ToUniversalTime 値を UTC に変換する必要があります。Therefore, you must convert the DateTime value to UTC by calling the DateTime.ToUniversalTime method before you perform the formatting operation. 一方、DateTimeOffset 値では、この変換が自動的に行われます。書式設定操作の前に DateTimeOffset.ToUniversalTime メソッドを呼び出す必要はありません。In contrast, DateTimeOffset values perform this conversion automatically; there is no need to call the DateTimeOffset.ToUniversalTime method before the formatting operation.

次の例では、米国太平洋標準時タイム ゾーンのシステム上で "r" 書式指定子を使用して、DateTime 値および DateTimeOffset 値を表示します。The following example uses the "r" format specifier to display a DateTime and a DateTimeOffset value on a system in the U.S. Pacific Time zone.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
DateTimeOffset dateOffset = new DateTimeOffset(date1, 
                            TimeZoneInfo.Local.GetUtcOffset(date1));
Console.WriteLine(date1.ToUniversalTime().ToString("r"));
// Displays Thu, 10 Apr 2008 13:30:00 GMT                       
Console.WriteLine(dateOffset.ToUniversalTime().ToString("r"));
// Displays Thu, 10 Apr 2008 13:30:00 GMT                        
Dim date1 As Date = #4/10/2008 6:30AM#
Dim dateOffset As New DateTimeOffset(date1, TimeZoneInfo.Local.GetUtcOFfset(date1))
Console.WriteLine(date1.ToUniversalTime.ToString("r"))
' Displays Thu, 10 Apr 2008 13:30:00 GMT                       
Console.WriteLine(dateOffset.ToUniversalTime.ToString("r"))
' Displays Thu, 10 Apr 2008 13:30:00 GMT                        

表のトップへBack to table

並べ替え可能な日付と時刻 ("s") 書式指定子The Sortable ("s") Format Specifier

"s" 標準書式指定子は、DateTimeFormatInfo.SortableDateTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "s" standard format specifier represents a custom date and time format string that is defined by the DateTimeFormatInfo.SortableDateTimePattern property. このパターンは定義済みの標準 (ISO 8601) を反映し、プロパティは読み取り専用です。The pattern reflects a defined standard (ISO 8601), and the property is read-only. したがって、使用されるカルチャまたは指定された書式プロバイダーに関係なく、常に同じです。Therefore, it is always the same, regardless of the culture used or the format provider supplied. カスタム書式指定文字列は、"yyyy'-'MM'-'dd'T'HH':'mm':'ss" です。The custom format string is "yyyy'-'MM'-'dd'T'HH':'mm':'ss".

"s" 書式指定子の目的は、日付と時刻の値に基づいて、一貫して昇順または降順で並べ替える結果の文字列を作成することです。The purpose of the "s" format specifier is to produce result strings that sort consistently in ascending or descending order based on date and time values. そのため、"s" 標準書式指定子は一貫性のある形式での日付と時刻の値を表していますが、書式設定操作によって、書式設定の対象となる日付と時刻のオブジェクトの値が DateTime.Kind プロパティやその DateTimeOffset.Offset 値を反映するように変更されることはありません。As a result, although the "s" standard format specifier represents a date and time value in a consistent format, the formatting operation does not modify the value of the date and time object that is being formatted to reflect its DateTime.Kind property or its DateTimeOffset.Offset value. たとえば、日付と時刻値の 2014-11-15T18:32:17+00:00 と 2014-11-15T18:32:17+08:00 を書式設定することで生成される結果文字列は同じになります。For example, the result strings produced by formatting the date and time values 2014-11-15T18:32:17+00:00 and 2014-11-15T18:32:17+08:00 are identical.

この標準書式指定子を使用した場合、書式設定操作または解析操作で常にインバリアント カルチャが使用されます。When this standard format specifier is used, the formatting or parsing operation always uses the invariant culture.

次の例では、米国太平洋標準時タイム ゾーンのシステム上で "s" 書式指定子を使用して、DateTime 値および DateTimeOffset 値を表示します。The following example uses the "s" format specifier to display a DateTime and a DateTimeOffset value on a system in the U.S. Pacific Time zone.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("s"));
// Displays 2008-04-10T06:30:00                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("s"))
' Displays 2008-04-10T06:30:00                       

表のトップへBack to table

短い形式の時刻 ("t") 書式指定子The Short Time ("t") Format Specifier

"t" 標準書式指定子は、現在の DateTimeFormatInfo.ShortTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "t" standard format specifier represents a custom date and time format string that is defined by the current DateTimeFormatInfo.ShortTimePattern property. たとえば、インバリアント カルチャのカスタム書式指定文字列は "HH:mm" です。For example, the custom format string for the invariant culture is "HH:mm".

結果文字列は、特定の DateTimeFormatInfo オブジェクトの書式情報に影響されます。The result string is affected by the formatting information of a specific DateTimeFormatInfo object. 返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの DateTimeFormatInfo.ShortTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the DateTimeFormatInfo.ShortTimePattern property of some cultures may not make use of all properties.

プロパティProperty 説明Description
ShortTimePattern 結果文字列の時刻要素の書式を定義します。Defines the format of the time component of the result string.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"t" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "t" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("t", 
                  CultureInfo.CreateSpecificCulture("en-us")));
// Displays 6:30 AM                        
Console.WriteLine(date1.ToString("t", 
                  CultureInfo.CreateSpecificCulture("es-ES")));
// Displays 6:30                      
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("t", _
                  CultureInfo.CreateSpecificCulture("en-us")))
' Displays 6:30 AM                        
Console.WriteLine(date1.ToString("t", _
                  CultureInfo.CreateSpecificCulture("es-ES")))
' Displays 6:30                      

表のトップへBack to table

長い形式の時刻 ("T") 書式指定子The Long Time ("T") Format Specifier

"T" 標準書式指定子は、特定のカルチャの DateTimeFormatInfo.LongTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "T" standard format specifier represents a custom date and time format string that is defined by a specific culture's DateTimeFormatInfo.LongTimePattern property. たとえば、インバリアント カルチャのカスタム書式指定文字列は "HH:mm:ss" です。For example, the custom format string for the invariant culture is "HH:mm:ss".

返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの DateTimeFormatInfo.LongTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the DateTimeFormatInfo.LongTimePattern property of some cultures may not make use of all properties.

プロパティProperty 説明Description
LongTimePattern 結果文字列の時刻要素の書式を定義します。Defines the format of the time component of the result string.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

次の例では、"T" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "T" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("T", 
                  CultureInfo.CreateSpecificCulture("en-us")));
// Displays 6:30:00 AM                       
Console.WriteLine(date1.ToString("T", 
                  CultureInfo.CreateSpecificCulture("es-ES")));
// Displays 6:30:00                      
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("T", _
                  CultureInfo.CreateSpecificCulture("en-us")))
' Displays 6:30:00 AM                       
Console.WriteLine(date1.ToString("T", _
                  CultureInfo.CreateSpecificCulture("es-ES")))
' Displays 6:30:00                      

表のトップへBack to table

世界共通の並べ替え可能な日付と時刻 ("u") 書式指定子The Universal Sortable ("u") Format Specifier

"u" 標準書式指定子は、DateTimeFormatInfo.UniversalSortableDateTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "u" standard format specifier represents a custom date and time format string that is defined by the DateTimeFormatInfo.UniversalSortableDateTimePattern property. このパターンは定義済みの標準を反映し、プロパティは読み取り専用です。The pattern reflects a defined standard, and the property is read-only. したがって、使用されるカルチャまたは指定された書式プロバイダーに関係なく、常に同じです。Therefore, it is always the same, regardless of the culture used or the format provider supplied. カスタム書式指定文字列は、"yyyy'-'MM'-'dd HH':'mm':'ss'Z'" です。The custom format string is "yyyy'-'MM'-'dd HH':'mm':'ss'Z'". この標準書式指定子を使用した場合、書式設定操作または解析操作で常にインバリアント カルチャが使用されます。When this standard format specifier is used, the formatting or parsing operation always uses the invariant culture.

結果文字列では、時刻は世界協定時刻 (UTC) で表される必要がありますが、書式設定操作では、元の DateTime 値の変換は実行されません。Although the result string should express a time as Coordinated Universal Time (UTC), no conversion of the original DateTime value is performed during the formatting operation. そのため、書式設定する前に DateTime メソッドを呼び出して、DateTime.ToUniversalTime 値を UTC に変換する必要があります。Therefore, you must convert a DateTime value to UTC by calling the DateTime.ToUniversalTime method before formatting it. 一方、DateTimeOffset 値では、この変換が自動的に行われます。書式設定操作の前に DateTimeOffset.ToUniversalTime メソッドを呼び出す必要はありません。In contrast, DateTimeOffset values perform this conversion automatically; there is no need to call the DateTimeOffset.ToUniversalTime method before the formatting operation.

次の例では、"u" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "u" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToUniversalTime().ToString("u"));
// Displays 2008-04-10 13:30:00Z                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToUniversalTime.ToString("u"))
' Displays 2008-04-10 13:30:00Z                       

表のトップへBack to table

世界共通の完全な日付と時刻 ("U") 書式指定子The Universal Full ("U") Format Specifier

"U" 標準書式指定子は、特定のカルチャの DateTimeFormatInfo.FullDateTimePattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "U" standard format specifier represents a custom date and time format string that is defined by a specified culture's DateTimeFormatInfo.FullDateTimePattern property. このパターンは、"F" パターンと同じです。The pattern is the same as the "F" pattern. ただし、DateTime 値は、書式設定される前に、自動的に UTC に変換されます。 However, the DateTime value is automatically converted to UTC before it is formatted.

返される文字列の書式を制御できる DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that may control the formatting of the returned string. 一部のカルチャの FullDateTimePattern プロパティによって返されるカスタム書式指定子では、一部のプロパティが使用されない場合があります。The custom format specifier that is returned by the FullDateTimePattern property of some cultures may not make use of all properties.

プロパティProperty 説明Description
FullDateTimePattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
DayNames 結果文字列に含まれるローカライズされた日付の名前を定義します。Defines the localized day names that can appear in the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.
TimeSeparator 時刻の構成要素、つまり時間、分、および秒を区切る文字列を定義します。Defines the string that separates the hour, minute, and second components of a time.
AMDesignator 午前 0 時から正午前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from midnight to before noon in a 12-hour clock.
PMDesignator 正午から午前 0 時前までの時刻を 12 時間形式で示す文字列を定義します。Defines the string that indicates times from noon to before midnight in a 12-hour clock.

"U" 書式指定子は、DateTimeOffset 型ではサポートされません。この書式指定子を使って FormatException 値の書式を設定しようとすると、DateTimeOffset がスローされます。The "U" format specifier is not supported by the DateTimeOffset type and throws a FormatException if it is used to format a DateTimeOffset value.

次の例では、"U" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "U" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("U", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Thursday, April 10, 2008 1:30:00 PM                       
Console.WriteLine(date1.ToString("U", 
                  CultureInfo.CreateSpecificCulture("sv-FI")));
// Displays den 10 april 2008 13:30:00                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("U", CultureInfo.CreateSpecificCulture("en-US")))
' Displays Thursday, April 10, 2008 1:30:00 PM                       
Console.WriteLine(date1.ToString("U", CultureInfo.CreateSpecificCulture("sv-FI")))
' Displays den 10 april 2008 13:30:00                       

表のトップへBack to table

年月 ("Y"、"y") 書式指定子The Year Month ("Y", "y") Format Specifier

"Y" または "y" 標準書式指定子は、特定のカルチャの DateTimeFormatInfo.YearMonthPattern プロパティで定義されるカスタム日時書式指定文字列を表します。The "Y" or "y" standard format specifier represents a custom date and time format string that is defined by the DateTimeFormatInfo.YearMonthPattern property of a specified culture. たとえば、インバリアント カルチャのカスタム書式指定文字列は "yyyy MMMM" です。For example, the custom format string for the invariant culture is "yyyy MMMM".

返される文字列の書式を制御する DateTimeFormatInfo オブジェクト プロパティの一覧を次の表に示します。The following table lists the DateTimeFormatInfo object properties that control the formatting of the returned string.

プロパティProperty 説明Description
YearMonthPattern 結果文字列の全体的な書式を定義します。Defines the overall format of the result string.
MonthNames 結果文字列に含まれるローカライズされた月の名前を定義します。Defines the localized month names that can appear in the result string.

次の例では、"y" 書式指定子を使用して、日付と時刻の値を表示します。The following example uses the "y" format specifier to display a date and time value.

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0);
Console.WriteLine(date1.ToString("Y", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays April, 2008                       
Console.WriteLine(date1.ToString("y", 
                  CultureInfo.CreateSpecificCulture("af-ZA")));
// Displays April 2008                       
Dim date1 As Date = #4/10/2008 6:30AM#
Console.WriteLine(date1.ToString("Y", CultureInfo.CreateSpecificCulture("en-US")))
' Displays April, 2008                       
Console.WriteLine(date1.ToString("y", CultureInfo.CreateSpecificCulture("af-ZA")))
' Displays April 2008                       

表のトップへBack to table

メモNotes

コントロール パネルの設定Control Panel Settings

コントロール パネルの [地域と言語のオプション] での設定は、書式設定操作によって生成される結果の文字列に影響します。The settings in the Regional and Language Options item in Control Panel influence the result string produced by a formatting operation. これらの設定は、書式設定の制御に使用される値を提供する現在のスレッド カルチャに関連付けられた DateTimeFormatInfo オブジェクトを初期化するために使用されます。These settings are used to initialize the DateTimeFormatInfo object associated with the current thread culture, which provides values used to govern formatting. コンピューターで使用する設定が異なる場合は、生成される文字列も異なります。Computers that use different settings generate different result strings.

また、CultureInfo.CultureInfo(String) コンストラクターを使用して、現在のシステム カルチャと同じカルチャを表す新しい CultureInfo オブジェクトをインスタンス化した場合、コントロール パネルの [地域と言語のオプション] 項目で設定されたカスタマイズが新しい CultureInfo オブジェクトに適用されます。In addition, if you use the CultureInfo.CultureInfo(String) constructor to instantiate a new CultureInfo object that represents the same culture as the current system culture, any customizations established by the Regional and Language Options item in Control Panel will be applied to the new CultureInfo object. CultureInfo.CultureInfo(String, Boolean) コンストラクターを使用すると、システムに対するカスタマイズが反映されない CultureInfo オブジェクトを作成できます。You can use the CultureInfo.CultureInfo(String, Boolean) constructor to create a CultureInfo object that does not reflect a system's customizations.

DateTimeFormatInfo のプロパティDateTimeFormatInfo Properties

書式設定は、現在の DateTimeFormatInfo オブジェクトのプロパティの影響を受けます。このオブジェクトは、現在のスレッド カルチャによって暗黙的に指定されるか、または書式設定を実行するメソッドの IFormatProvider パラメーターによって明示的に指定されます。Formatting is influenced by properties of the current DateTimeFormatInfo object, which is provided implicitly by the current thread culture or explicitly by the IFormatProvider parameter of the method that invokes formatting. IFormatProvider パラメーターには、カルチャを表す CultureInfo オブジェクトを指定するか、特定のカルチャの日時書式設定規則を表す DateTimeFormatInfo オブジェクトを指定する必要があります。For the IFormatProvider parameter, your application should specify a CultureInfo object, which represents a culture, or a DateTimeFormatInfo object, which represents a particular culture's date and time formatting conventions. 標準日時書式指定子の多くは、現在の DateTimeFormatInfo オブジェクトのプロパティによって定義されている書式設定パターンのエイリアスです。Many of the standard date and time format specifiers are aliases for formatting patterns defined by properties of the current DateTimeFormatInfo object. 標準日時書式指定子によって生成される結果は、対応する DateTimeFormatInfo プロパティの、対応する日時形式パターンを変更することによって変えることができます。Your application can change the result produced by some standard date and time format specifiers by changing the corresponding date and time format patterns of the corresponding DateTimeFormatInfo property.

参照See Also

System.DateTime
System.DateTimeOffset
型の書式設定Formatting Types
Custom Date and Time Format StringsCustom Date and Time Format Strings
サンプル: .NET Framework 4 の書式設定ユーティリティSample: .NET Framework 4 Formatting Utility