Standardní řetězce formátu data a času

Řetězec standardního formátu data a času používá jeden znak jako specifikátor formátu k definování textové reprezentace DateTime DateTimeOffset hodnoty nebo. Libovolný řetězec formátu data a času, který obsahuje více než jeden znak, včetně prázdných znaků, je interpretován jako řetězec vlastního formátu data a času. Řetězec standardního nebo vlastního formátu lze používat dvěma způsoby:

  • Chcete-li definovat řetězec, který je výsledkem operace formátování.

  • Chcete-li definovat textovou reprezentaci hodnoty data a času, která může být převedena na DateTime DateTimeOffset hodnotu nebo pomocí operace analýzy.

Tip

Můžete si stáhnout formátovací nástroj, aplikaci model Windows Forms .NET, která umožňuje použít řetězce formátu buď na číselné, nebo na hodnoty data a času a zobrazit výsledný řetězec. Zdrojový kód je k dispozici pro C# a Visual Basic.

Poznámka

Některé příklady jazyka C# v tomto článku spustit v Try.NET inline kód runner a hřiště. Výběrem tlačítka Spustit spustíte příklad v interaktivním okně. Jakmile spustíte kód, můžete jej upravit a spustit upravený kód výběrem spustit znovu. Změněný kód se spustí v interaktivním okně nebo, pokud kompilace selže, interaktivní okno zobrazí všechny chybové zprávy kompilátoru Jazyka C#.

Místní časové pásmo Try.NET inline kód běžec a hřiště je koordinovaný světový čas, nebo UTC. To může ovlivnit chování a výstup příkladů, DateTime DateTimeOffsetkteré TimeZoneInfo ilustrují , a typy a jejich členy.

Tabulka specifikátorů formátu

Následující tabulka popisuje standardní specifikátory formátu data a času. Není-li uvedeno jinak, konkrétní specifikátor standardního formátu data a času vytváří identickou řetězcovou reprezentaci bez ohledu na to, zda je použit s DateTime DateTimeOffset hodnotou nebo. Další informace o použití řetězců standardního formátu data a času naleznete v tématu Nastavení ovládacích panelů a vlastnosti DateTimeFormatInfo .

Specifikátor formátu Popis Příklady
"d" Vzor krátkého formátu data.

Další informace:specifikátor krátkého formátu data ("d").
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. > 2009/06/15 (ja-JP)
"D" Vzor dlouhého formátu data.

Další informace:specifikátor dlouhého formátu data ("D").
2009-06-15T13:45:30 > pondělí, 15. června 2009 (EN-US)

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

2009-06-15T13:45:30-> Montag, 15. Juni 2009 (de-DE)
"f" Vzor úplného formátu data/času (krátkého formátu času).

Další informace: Specifikátor úplného formátu data a krátkého formátu času ("f").
2009-06-15T13:45:30-> pondělí, 15. června 2009 1:45 odp. (EN-US)

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

2009-06-15T13:45:30-> Δευτέρα, 15 Ιουνίου 2009 1:45 μμ (El-GR)
"F" Vzor úplného formátu data/času (dlouhého formátu času).

Další informace: Specifikátor úplného formátu data a dlouhého formátu času ("F").
2009-06-15T13:45:30-> pondělí, 15. června 2009 1:45:30 ODP. (EN-US)

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)
"g" Vzor obecného formátu data/času (krátkého formátu času).

Další informace: specifikátor obecného formátu data a krátkého formátu času ("g").
2009-06-15T13:45:30-> 6/15/2009 1:45 odp. (EN-US)

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

2009-06-15T13:45:30. > 2009/6/15 13:45 (zh-CN)
"G" Vzor obecného formátu data a času (dlouhého formátu času).

Další informace: specifikátor obecného formátu data a dlouhého formátu času ("G").
2009-06-15T13:45:30-> 6/15/2009 1:45:30 ODP. (EN-US)

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)
"M", "m" Vzor formátu měsíce/dne.

Další informace: specifikátor formátu month ("m", "m").
2009-06-15T13:45:30-> 15. června (EN-US)

2009-06-15T13:45:30 – > 15. Juni (da-DK)

2009-06-15T13:45:30 – > 15 Juni (ID-ID)
"O", "o" vzor pro datum a čas Round-Trip.

Další informace: specifikátor formátu Round-Trip ("o", "o").
DateTime hodnota

2009-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.0000000 Z

2009-06-15T13:45:30 (DateTimeKind. unspecifikovaná)--> 2009-06-15T13:45:30.0000000

DateTimeOffset hodnota

2009-06-15T13:45:30.07:00--> 2009-06-15T13:45:30.0000000-07:00
"R", "r" Vzor RFC1123.

Další informace: specifikátor formátu RFC1123 ("r", "r").
2009-06-15T13:45:30-> Mon, 15. června 2009 20:45:30 GMT
"s" Vzor seřaditelného formátu data/času.

Další informace: specifikátor formátu ("s").
2009-06-15T13:45:30 (DateTimeKind. Local)-> 2009-06-15T13:45:30

2009-06-15T13:45:30 (DateTimeKind. UTC)-> 2009-06-15T13:45:30
"t" Vzor krátkého formátu času.

Další informace: specifikátor krátkého formátu času ("t").
2009-06-15T13:45:30-> 1:45 odp. (EN-US)

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

2009-06-15T13:45:30-> 01:45 م (ar-EG)
"T" Vzor dlouhého formátu času.

Další informace: specifikátor dlouhého formátu času ("T").
2009-06-15T13:45:30-> 1:45:30 ODP. (EN-US)

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

2009-06-15T13:45:30-> 01:45:30 م (ar-EG)
"u" Vzor univerzálního seřaditelného formátu data/času.

Další informace: Specifikátor univerzálního formátu ("u").
S DateTime hodnotou: 2009-06-15T13:45:30-> 2009-06-15 13:45:30Z

S DateTimeOffset hodnotou: 2009-06-15T13:45:30-> 2009-06-15 20:45:30Z
"U" Vzor univerzálního úplného formátu data/času.

Další informace: Specifikátor univerzálního úplného formátu ("U").
2009-06-15T13:45:30-> pondělí, 15. června 2009 8:45:30 ODP. (EN-US)

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)
"Y", "y" Vzor formátu roku a měsíce.

Další informace: specifikátor formátu roku a měsíce ("Y").
2009-06-15T13:45:30 > června 2009 (EN-US)

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

2009-06-15T13:45:30-> Juni 2009 (ID-ID)
Jakýkoli jiný samostatný znak Neznámý specifikátor. Vyvolá dobu běhu FormatException .

Jak fungují standardní řetězce formátu

V rámci operace formátování je řetězec standardního formátu pouze aliasem pro řetězec vlastního formátu. Výhodou používání aliasu pro odkaz na řetězec vlastního formátu je skutečnost, že ačkoli alias zůstane neutrální, řetězec vlastního formátu se může změnit. Toto je důležité, protože řetězcová reprezentace hodnot data a času se obvykle liší podle jazykové verze. Například řetězec standardního formátu "d" označuje, že hodnota data a času má být zobrazena pomocí vzoru krátkého formátu data. Pro neutrální jazykovou verzi je použit formát "MM/dd/yyyy". Pro jazykovou verzi fr-FR je to formát "dd/MM/yyyy". Pro jazykovou verzi ja-JP je to formát "yyyy/MM/dd".

Pokud je řetězec standardního formátu v rámci operace formátování namapován na řetězec vlastního formátu konkrétní jazykové verze, může vaše aplikace definovat konkrétní jazykovou verzi, jejíž řetězce vlastního formátu se používají jedním z těchto způsobů:

  • Můžete použít výchozí (nebo aktuální) jazykovou verzi. Následující příklad zobrazí datum pomocí krátkého formátu data aktuální jazykové verze. V tomto případě je aktuální jazyková verze nastavena na 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
    
  • Můžete předat CultureInfo objekt reprezentující jazykovou verzi, jejíž formátování má být použito pro metodu, která má IFormatProvider parametr. Následující příklad zobrazí datum pomocí formátu krátkého data jazykové verze pt-BR.

    // 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
    
  • Můžete předat DateTimeFormatInfo objekt, který poskytuje informace o formátování metodě, která má IFormatProvider parametr. Následující příklad zobrazí datum pomocí formátu krátkého data z DateTimeFormatInfo objektu pro jazykovou verzi hr-hr.

    // 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
    

Poznámka

Informace o přizpůsobení vzorů nebo řetězců použitých při formátování hodnot data a času naleznete v NumberFormatInfo tématu třídy.

V některých případech slouží řetězec standardního formátu jako vhodná zkratka pro řetězec vlastního delšího formátu, který je neutrální. Do této kategorie patří čtyři řetězce standardního formátu: "O" (nebo "o"), "R" (nebo "r"), "s" a "u". Tyto řetězce odpovídají řetězcům vlastního formátu, které jsou definovány neutrální jazykovou verzí. Vytvářejí řetězcové reprezentace hodnot data a času, které mají být identické napříč jazykovými verzemi. Následující tabulka obsahuje informace o těchto čtyřech řetězcích standardního formátu data a času.

Řetězec standardního formátu Definovaný vlastností DateTimeFormatInfo.InvariantInfo Řetězec vlastního formátu
"O" nebo "o" Žádné yyyy-yyyy '-DD 't ': ' mm ': ' ss '. ' fffffffK
"R" nebo "r" RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
"s" SortableDateTimePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss
"u" UniversalSortableDateTimePattern yyyy'-'MM'-'dd HH':'mm':'ss'Z'

Standardní formátovací řetězce lze také použít při analýze operací s DateTime.ParseExact DateTimeOffset.ParseExact metodami nebo, které vyžadují, aby vstupní řetězec přesně splňoval konkrétní vzor, aby operace analýzy mohla být úspěšná. Mnoho řetězců standardního formátu je namapováno na několik řetězců vlastního formátu. Hodnotu data a času lze tedy vyjádřit v celé řadě formátů a operace analýzy i tak proběhne úspěšně. Můžete určit řetězec vlastního formátu nebo řetězce, které odpovídají standardnímu formátovacímu řetězci voláním DateTimeFormatInfo.GetAllDateTimePatterns(Char) metody. Následující příklad zobrazí řetězce vlastního formátu, které mapují řetězec standardního formátu "d" (vzor krátkého formátu data).

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

Následující části popisují standardní specifikátory formátu pro DateTime DateTimeOffset hodnoty a.

Formáty data

Tato skupina obsahuje následující formáty:

Specifikátor krátkého formátu data ("d")

Standardní specifikátor formátu "d" představuje řetězec vlastního formátu data a času, který je definován vlastností konkrétní jazykové verze DateTimeFormatInfo.ShortDatePattern . Například řetězec vlastního formátu, který je vrácen ShortDatePattern vlastností invariantní jazykové verze, je "mm/dd/rrrr".

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které řídí formátování vráceného řetězce.

Vlastnost Popis
ShortDatePattern Definuje celkový formát výsledného řetězce.
DateSeparator Definuje řetězec, který u data odděluje komponenty roku, měsíce a dne.

Následující příklad používá specifikátor formátu "d" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor dlouhého formátu data ("D")

Standardní specifikátor formátu "D" představuje řetězec vlastního formátu data a času, který je definován aktuální DateTimeFormatInfo.LongDatePattern vlastností. Například řetězec vlastního formátu pro neutrální jazykovou verzi je "dddd, dd MMMM yyyy".

V následující tabulce jsou uvedeny vlastnosti DateTimeFormatInfo objektu, které řídí formátování vráceného řetězce.

Vlastnost Popis
LongDatePattern Definuje celkový formát výsledného řetězce.
DayNames Definuje lokalizované názvy dní, které mohou být zobrazeny ve výsledném řetězci.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.

Následující příklad používá specifikátor formátu "D" k zobrazení hodnoty data a času.

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                        

Zpět na tabulku

Formáty data a času

Tato skupina obsahuje následující formáty:

Specifikátor úplného formátu data a krátkého formátu času ("f")

Standardní specifikátor formátu "f" představuje kombinaci vzorů dlouhého formátu data "D" a krátkého formátu času "t", která je oddělena mezerou.

Výsledný řetězec je ovlivněn informacemi o formátování konkrétního DateTimeFormatInfo objektu. V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Vlastní specifikátor formátu vrácený DateTimeFormatInfo.LongDatePattern DateTimeFormatInfo.ShortTimePattern vlastnostmi a některých kultur nemusí využívat všechny vlastnosti.

Vlastnost Popis
LongDatePattern Definuje formát komponenty data výsledného řetězce.
ShortTimePattern Definuje formát komponenty času výsledného řetězce.
DayNames Definuje lokalizované názvy dní, které mohou být zobrazeny ve výsledném řetězci.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "f" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor úplného formátu data a dlouhého formátu času ("F")

Standardní specifikátor formátu "F" představuje řetězec vlastního formátu data a času, který je definován aktuální DateTimeFormatInfo.FullDateTimePattern vlastností. Například řetězec vlastního formátu pro neutrální jazykovou verzi je "dddd, dd MMMM yyyy HH:mm:ss".

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen FullDateTimePattern vlastností některých kultur, nemusí využívat všechny vlastnosti.

Vlastnost Popis
FullDateTimePattern Definuje celkový formát výsledného řetězce.
DayNames Definuje lokalizované názvy dní, které mohou být zobrazeny ve výsledném řetězci.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "F" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor obecného formátu data a krátkého formátu času ("g")

Standardní specifikátor formátu "g" představuje kombinaci vzorů krátkého formátu data "d" a krátkého formátu času "t", která je oddělena mezerou.

Výsledný řetězec je ovlivněn informacemi o formátování konkrétního DateTimeFormatInfo objektu. V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen DateTimeFormatInfo.ShortDatePattern vlastnostmi a v DateTimeFormatInfo.ShortTimePattern některých jazykových verzích, nemusí využívat všechny vlastnosti.

Vlastnost Popis
ShortDatePattern Definuje formát komponenty data výsledného řetězce.
ShortTimePattern Definuje formát komponenty času výsledného řetězce.
DateSeparator Definuje řetězec, který u data odděluje komponenty roku, měsíce a dne.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "g" k zobrazení hodnoty data a času.

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                        

Zpět na tabulku

Specifikátor obecného formátu data a dlouhého formátu času ("G")

Standardní specifikátor formátu "G" představuje kombinaci vzorů krátkého formátu data "d" a dlouhého formátu času "T", která je oddělena mezerou.

Výsledný řetězec je ovlivněn informacemi o formátování konkrétního DateTimeFormatInfo objektu. V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen DateTimeFormatInfo.ShortDatePattern vlastnostmi a v DateTimeFormatInfo.LongTimePattern některých jazykových verzích, nemusí využívat všechny vlastnosti.

Vlastnost Popis
ShortDatePattern Definuje formát komponenty data výsledného řetězce.
LongTimePattern Definuje formát komponenty času výsledného řetězce.
DateSeparator Definuje řetězec, který u data odděluje komponenty roku, měsíce a dne.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "G" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor formátu Round-Trip ("O", "o")

Standardní specifikátor formátu "O" nebo "o" představuje řetězec vlastního formátu data a času pomocí vzoru, který zachovává informace o časovém pásmu a generuje výsledný řetězec, který odpovídá normě ISO 8601. Pro DateTime hodnoty je tento specifikátor formátu navržen tak, aby zachoval hodnoty data a času spolu s DateTime.Kind vlastností v textu. Formátovaný řetězec lze analyzovat zpět pomocí DateTime.Parse(String, IFormatProvider, DateTimeStyles) metody nebo, DateTime.ParseExact Pokud styles je parametr nastaven na hodnotu DateTimeStyles.RoundtripKind .

Standardní specifikátor formátu "O" nebo "o" odpovídá "yyyy-yyyy '-DD 't": ' mm ': ' mm ': ' ss '. ' fffffffK "řetězec vlastního formátu pro DateTime hodnoty a" yyyy-yyyy '-DD 't ":" mm ":" SS ". fffffffzzz řetězec vlastního formátu pro DateTimeOffset hodnoty. Dvojice jednoduchých uvozovek v tomto řetězci oddělující jednotlivé znaky, jako jsou například spojovníky, dvojtečky a písmeno "T", označují, že jednotlivé znaky jsou literály, které nelze změnit. Apostrofy se ve výstupním řetězci nezobrazují.

Standardní specifikátor formátu "O" nebo "o" (a "yyyy-yyyy '-DD 't": ' mm ': ' ss '. ' fffffffK "řetězec vlastního formátu") využívá tři způsoby, které ISO 8601 představuje informace o časovém pásmu, aby zachovala Kind vlastnost DateTime hodnot:

  • Komponenta časového pásma DateTimeKind.Local hodnot data a času je posun od času UTC (například + 01:00,-07:00). Všechny DateTimeOffset hodnoty jsou také vyjádřeny v tomto formátu.

  • Komponenta časového pásma DateTimeKind.Utc hodnot data a času používá "Z" (což představuje nulový posun) k reprezentaci UTC.

  • DateTimeKind.Unspecified hodnoty data a času nemají žádné informace o časovém pásmu.

Vzhledem k tomu, že standardní specifikátor formátu "O" nebo "o" odpovídá mezinárodnímu standardu, operace formátování nebo analýzy, která používá specifikátor, vždy používá invariantní jazykovou verzi a gregoriánský kalendář.

Řetězce, které jsou předány Parse do TryParse metod,, a ParseExact TryParseExact DateTime DateTimeOffset lze analyzovat pomocí specifikátoru formátu "O" nebo "o", pokud jsou v jednom z těchto formátů. V případě DateTime objektů by mělo přetížení analýzy, které voláte, zahrnovat také styles parametr s hodnotou DateTimeStyles.RoundtripKind . Všimněte si, že pokud zavoláte metodu analýzy s vlastním řetězcem formátu, který odpovídá specifikátoru formátu "O" nebo "o", nezískáte stejné výsledky jako "O" nebo "o". Důvodem je, že analýza metod, které používají řetězec vlastního formátu, nemůže analyzovat řetězcovou reprezentaci hodnot data a času, které chybí komponenty časového pásma, nebo použít "Z" k označení času UTC.

Následující příklad používá specifikátor formátu "o" pro zobrazení řady DateTime hodnot a DateTimeOffset hodnoty v systému v americkém tichomořském časovém pásmu.

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

Následující příklad používá specifikátor formátu "o" pro vytvoření formátovaného řetězce a následně obnoví původní hodnotu data a času voláním metody data a času Parse .

// 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.

Zpět na tabulku

Specifikátor formátu RFC1123 ("R", "r")

Standardní specifikátor formátu "R" nebo "r" představuje řetězec vlastního formátu data a času, který je definován DateTimeFormatInfo.RFC1123Pattern vlastností. Tento vzor odpovídá definovanému standardu a příslušná vlastnost je určena jen pro čtení. Proto je vždy stejný bez ohledu na použitou jazykovou verzi nebo dodaného poskytovatele formátu. Řetězec vlastního formátu je "ddd, dd MMM yyyy HH':'mm':'ss 'GMT'". Při použití tohoto standardního specifikátoru formátu používá operace formátování nebo analýzy vždy neutrální jazykovou verzi.

Výsledný řetězec je ovlivněn následujícími vlastnostmi DateTimeFormatInfo objektu vráceného DateTimeFormatInfo.InvariantInfo vlastností, která představuje invariantní jazykovou verzi.

Vlastnost Popis
RFC1123Pattern Definuje formát výsledného řetězce.
AbbreviatedDayNames Definuje zkrácené názvy dní, které mohou být zobrazeny ve výsledném řetězci.
AbbreviatedMonthNames Definuje zkrácené názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.

I když standard RFC 1123 vyjadřuje čas jako koordinovaný světový čas (UTC), operace formátování neupraví hodnotu DateTime objektu, který se formátuje. Proto je nutné převést DateTime hodnotu na čas UTC voláním DateTime.ToUniversalTime metody před provedením operace formátování. Naopak DateTimeOffset hodnoty provádějí tento převod automaticky; DateTimeOffset.ToUniversalTime před operací formátování není nutné volat metodu.

Následující příklad používá specifikátor formátu "r" k zobrazení DateTime a DateTimeOffset hodnoty v systému v americké tichomořském časovém pásmu.

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                        

Zpět na tabulku

Specifikátor formátu ("s"), který lze seřadit

Standardní specifikátor formátu "s" představuje řetězec vlastního formátu data a času, který je definován DateTimeFormatInfo.SortableDateTimePattern vlastností. Tento vzor odpovídá definovanému standardu (ISO 8601) a příslušná vlastnost je určena jen pro čtení. Proto je vždy stejný bez ohledu na použitou jazykovou verzi nebo dodaného poskytovatele formátu. Řetězec vlastního formátu je "yyyy'-'MM'-'dd'T'HH':'mm':'ss".

Účelem specifikátoru formátu "s" je vytváření výsledných řetězců, které se konzistentně řadí ve vzestupném nebo sestupném pořadí podle hodnot data a času. V důsledku toho i když standardní specifikátor formátu "s" představuje hodnotu data a času v konzistentním formátu, operace formátování neupravuje hodnotu objektu data a času, který je formátován tak, aby odrážel jeho DateTime.Kind vlastnost nebo DateTimeOffset.Offset hodnotu. Například výsledné řetězce vytvořené formátováním hodnot data a času 2014-11-15T18:32:17 + 00:00 a 2014-11-15T18:32:17 + 08:00 jsou identické.

Při použití tohoto standardního specifikátoru formátu používá operace formátování nebo analýzy vždy neutrální jazykovou verzi.

Následující příklad používá specifikátor formátu "s" pro zobrazení DateTime a a DateTimeOffset hodnotu v systému v americké tichomořském časovém pásmu.

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                       

Zpět na tabulku

Univerzální specifikátor formátu ("u")

Standardní specifikátor formátu "u" představuje řetězec vlastního formátu data a času, který je definován DateTimeFormatInfo.UniversalSortableDateTimePattern vlastností. Tento vzor odpovídá definovanému standardu a příslušná vlastnost je určena jen pro čtení. Proto je vždy stejný bez ohledu na použitou jazykovou verzi nebo dodaného poskytovatele formátu. Řetězec vlastního formátu je "yyyy'-'MM'-'dd HH':'mm':'ss'Z'". Při použití tohoto standardního specifikátoru formátu používá operace formátování nebo analýzy vždy neutrální jazykovou verzi.

I když by výsledný řetězec měl vyjadřovat čas koordinovaný světový čas (UTC), DateTime během operace formátování se neprovede žádný převod původní hodnoty. Proto je nutné převést DateTime hodnotu na čas UTC voláním DateTime.ToUniversalTime metody před formátováním. Naopak DateTimeOffset hodnoty provádějí tento převod automaticky; DateTimeOffset.ToUniversalTime před operací formátování není nutné volat metodu.

Následující příklad používá specifikátor formátu "u" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor univerzálního úplného formátu ("U")

Standardní specifikátor formátu "U" představuje řetězec vlastního formátu data a času, který je definován zadanou vlastností jazykové verze DateTimeFormatInfo.FullDateTimePattern . Tento vzor je stejný jako vzor "F". DateTimeHodnota je však automaticky převedena na UTC před formátováním.

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen FullDateTimePattern vlastností některých kultur, nemusí využívat všechny vlastnosti.

Vlastnost Popis
FullDateTimePattern Definuje celkový formát výsledného řetězce.
DayNames Definuje lokalizované názvy dní, které mohou být zobrazeny ve výsledném řetězci.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Specifikátor formátu "U" není tímto DateTimeOffset typem podporován a vyvolá výjimku, FormatException Pokud je použita k formátování DateTimeOffset hodnoty.

Následující příklad používá specifikátor formátu "U" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Formáty času

Tato skupina obsahuje následující formáty:

Specifikátor krátkého formátu času ("t")

Standardní specifikátor formátu "t" představuje řetězec vlastního formátu data a času, který je definován aktuální DateTimeFormatInfo.ShortTimePattern vlastností. Například řetězec vlastního formátu pro neutrální jazykovou verzi je "HH:mm".

Výsledný řetězec je ovlivněn informacemi o formátování konkrétního DateTimeFormatInfo objektu. V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen DateTimeFormatInfo.ShortTimePattern vlastností některých kultur, nemusí využívat všechny vlastnosti.

Vlastnost Popis
ShortTimePattern Definuje formát komponenty času výsledného řetězce.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "t" k zobrazení hodnoty data a času.

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                      

Zpět na tabulku

Specifikátor dlouhého formátu času ("T")

Standardní specifikátor formátu "T" představuje řetězec vlastního formátu data a času, který je definován vlastností konkrétní jazykové verze DateTimeFormatInfo.LongTimePattern . Například řetězec vlastního formátu pro neutrální jazykovou verzi je "HH:mm:ss".

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které mohou řídit formátování vráceného řetězce. Specifikátor vlastního formátu, který je vrácen DateTimeFormatInfo.LongTimePattern vlastností některých kultur, nemusí využívat všechny vlastnosti.

Vlastnost Popis
LongTimePattern Definuje formát komponenty času výsledného řetězce.
TimeSeparator Definuje řetězec, který odděluje komponenty hodiny, minuty a sekundy v časovém údaji.
AMDesignator Definuje řetězec, který označuje dobu od půlnoci do doby před polednem ve 12hodinovém formátu.
PMDesignator Definuje řetězec, který označuje dobu od poledne do doby před půlnocí ve 12hodinovém formátu.

Následující příklad používá specifikátor formátu "T" k zobrazení hodnoty data a času.

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                      

Zpět na tabulku

Částečné formáty data

Tato skupina obsahuje následující formáty:

Specifikátor formátu měsíce ("M", "m")

Standardní specifikátor formátu "M" nebo "M" představuje řetězec vlastního formátu data a času, který je definován aktuální DateTimeFormatInfo.MonthDayPattern vlastností. Například řetězec vlastního formátu pro neutrální jazykovou verzi je "MMMM dd".

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které řídí formátování vráceného řetězce.

Vlastnost Popis
MonthDayPattern Definuje celkový formát výsledného řetězce.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.

Následující příklad používá specifikátor formátu "m" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Specifikátor formátu roku a měsíce ("Y", "y")

Standardní specifikátor formátu "Y" nebo "y" představuje řetězec vlastního formátu data a času, který je definován DateTimeFormatInfo.YearMonthPattern vlastností zadané jazykové verze. Například řetězec vlastního formátu pro neutrální jazykovou verzi je "yyyy MMMM".

V následující tabulce jsou uvedeny DateTimeFormatInfo vlastnosti objektu, které řídí formátování vráceného řetězce.

Vlastnost Popis
YearMonthPattern Definuje celkový formát výsledného řetězce.
MonthNames Definuje lokalizované názvy měsíců, které mohou být zobrazeny ve výsledném řetězci.

Následující příklad používá specifikátor formátu "y" k zobrazení hodnoty data a času.

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                       

Zpět na tabulku

Nastavení ovládacích panelů

V systému Windows nastavení v položce místní a jazykové nastavení v Ovládacích panelech ovlivní výsledný řetězec vytvořený při operaci formátování. Tato nastavení slouží k inicializaci DateTimeFormatInfo objektu přidruženého k aktuální jazykové verzi vlákna, které poskytuje hodnoty použité k řízení formátování. Počítače, které používají různá nastavení, generují různé výsledné řetězce.

Kromě toho, pokud použijete CultureInfo(String) konstruktor k vytvoření instance nového CultureInfo objektu, který představuje stejnou jazykovou verzi jako aktuální jazyková verze systému, všechna přizpůsobení, která jsou vytvořena položkou místní a jazykové nastavení v Ovládacích panelech, budou použita pro nový CultureInfo objekt. Konstruktor můžete použít CultureInfo(String, Boolean) k vytvoření CultureInfo objektu, který nereflektuje vlastní nastavení systému.

Vlastnosti DateTimeFormatInfo

Formátování je ovlivněno vlastnostmi aktuálního DateTimeFormatInfo objektu, který je poskytnut implicitně aktuální jazykovou verzí vlákna nebo explicitně IFormatProvider parametrem metody, která vyvolá formátování. Pro IFormatProvider parametr by měla vaše aplikace určovat CultureInfo objekt, který představuje jazykovou verzi, nebo DateTimeFormatInfo objekt, který představuje konvence formátování data a času konkrétní jazykové verze. Mnohé standardní specifikátory formátu data a času jsou aliasy pro vzory formátování definované vlastnostmi aktuálního DateTimeFormatInfo objektu. Vaše aplikace může změnit výsledek vytvořený některými specifikátory standardního formátu data a času změnou odpovídajících vzorů formátu data a času odpovídající DateTimeFormatInfo Vlastnosti.

Viz také