Standaardtekenreeksen voor datum- en tijdnotatie

Een standaardtekenreeks met datum- en tijdnotatie gebruikt één teken als notatieaanduiding om de tekstweergave van een DateTime of een DateTimeOffset waarde te definiëren. Een tekenreeks met datum- en tijdnotatie die meer dan één teken bevat, inclusief witruimte, wordt geïnterpreteerd als een aangepaste tekenreeks voor datum- en tijdnotatie. Een tekenreeks met een standaard- of aangepaste notatie kan op twee manieren worden gebruikt:

  • De tekenreeks definiëren die het resultaat is van een opmaakbewerking.

  • De tekstweergave definiëren van een datum- en tijdwaarde die kan worden geconverteerd naar een DateTime of-waarde DateTimeOffset door een parseerbewerking.

Tip

U kunt het opmaakhulpprogramma downloaden, een .NET-Windows Forms-toepassing waarmee u opmaaktekenreeksen kunt toepassen op numerieke waarden of datum- en tijdwaarden en de resultaattekenreeks kunt weergeven. Broncode is beschikbaar voor C# en Visual Basic.

Notitie

Sommige C#-voorbeelden in dit artikel worden uitgevoerd in de Try.NET inline coderunner en playground. Selecteer de knop Uitvoeren om een voorbeeld uit te voeren in een interactief venster. Nadat u de code hebt uitgevoerd, kunt u deze wijzigen en de gewijzigde code uitvoeren door opnieuw Uitvoeren te selecteren. De gewijzigde code wordt uitgevoerd in het interactieve venster of, als de compilatie mislukt, worden alle foutberichten van de C#-compiler weergegeven.

De lokale tijdzone van de Try.NET inline coderunner en playground is Coordinated Universal Time of UTC. Dit kan van invloed zijn op het gedrag en de uitvoer van voorbeelden die de DateTimetypen , DateTimeOffseten TimeZoneInfo en de bijbehorende leden illustreren.

Tabel met opmaakaanduidingen

In de volgende tabel worden de standaardaanduidingen voor datum- en tijdnotatie beschreven. Tenzij anders vermeld, produceert een bepaalde standaardaanduiding voor datum- en tijdnotatie een identieke tekenreeksweergave, ongeacht of deze wordt gebruikt met een DateTime of een DateTimeOffset waarde. Zie Configuratiescherm Instellingen en Eigenschappen dateTimeFormatInfo voor meer informatie over het gebruik van standaard tekenreeksen voor datum- en tijdnotatie.

Opmaakaanduiding Beschrijving Voorbeelden
"d" Kort datumpatroon.

Meer informatie:De korte datumnotatie (d).
2009-06-15T13:45:30 -> 15-6-2009 (en-US)

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

2009-06-15T13:45:30 -> 2009/06/15 (ja-JP)
"D" Lang datumpatroon.

Meer informatie:De lange datumnotatie (D).
2009-06-15T13:45:30 -> maandag 15 juni 2009 (en-US)

2009-06-15T13:45:30 -> понедельник, 15 июня 2009 г. (ru-RU)

2009-06-15T13:45:30 -> Montag, 15. Juni 2009 (de-DE)
"f" Volledig datum-/tijdpatroon (korte tijd).

Meer informatie: De aanduiding voor de volledige datumnotatie korte tijd ('f').
2009-06-15T13:45:30 -> maandag 15 juni 2009 13:45 (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" Volledig datum-/tijdpatroon (lange tijd).

Meer informatie: De aanduiding voor de volledige datum-lange tijdnotatie ('F').
2009-06-15T13:45:30 -> Maandag 15 juni 2009 13:45:30 (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" Algemeen datum-/tijdpatroon (korte tijd).

Meer informatie: De algemene datumnotatienotatie ('g').
2009-06-15T13:45:30 -> 15-6-2009 13:45 (en-US)

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

2009-06-15T13:45:30 -> 6/2009 15 13:45 (zh-CN)
"G" Algemeen datum-/tijdpatroon (lange tijd).

Meer informatie: De algemene datum lange tijd ('G')-notatie.
2009-06-15T13:45:30 -> 15-6-2009 13:45:30 (en-US)

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

2009-06-15T13:45:30 -> 6-2009 15 13:45:30 (zh-CN)
"M", "m" Maand-/dagpatroon.

Meer informatie: De maandnotatieaanduiding ('M', 'm').
2009-06-15T13:45:30 -> 15 juni (en-US)

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

2009-06-15T13:45:30 -> 15 juni (id-ID)
"O", "o" datum/tijd-patroon van retour.

Meer informatie: De indelingsaanduiding van de retour ("O", "o")
DateTime Waarden:

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.00000000Z

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

DateTimeOffset Waarden:

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

Meer informatie: De indelingsaanduiding RFC1123 ('R', 'r').
DateTimeOffset invoer: 2009-06-15T13:45:30 -> ma, 15 jun 2009 20:45:30 GMT
DateTime invoer: 2009-06-15T13:45:30 -> ma, 15 juni 2009 13:45:30 GMT
"s" Sorteerbaar datum-/tijdpatroon.

Meer informatie: De indelingsaanduiding voor sorteren ('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" Korte tijdpatroon.

Meer informatie: De aanduiding voor de korte tijdnotatie ('t').
2009-06-15T13:45:30 -> 13:45 (en-US)

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

2009-06-15T13:45:30 -> 01:45 م (ar-EG)
"T" Lange tijd patroon.

Meer informatie: De aanduiding voor de lange tijdnotatie (T).
2009-06-15T13:45:30 -> 13:45:30 (en-US)

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

2009-06-15T13:45:30 -> 01:45:30 م (ar-EG)
"u" Universeel sorteerbaar datum-/tijdpatroon.

Meer informatie: De universal sortable (u)-indelingsaanduiding.
Met een DateTime waarde: 2009-06-15T13:45:30 -> 2009-06-15 13:45:30Z

Met een DateTimeOffset waarde: 2009-06-15T13:45:30 -> 2009-06-15 20:45:30Z
"U" Universeel volledig datum/tijd-patroon.

Meer informatie: De universal full (U)-indelingsaanduiding.
2009-06-15T13:45:30 -> maandag 15 juni 2009 2009 20:45:30 (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" Jaarmaandpatroon.

Meer informatie: De jaarmaandnotatie ('Y') specifier.
2009-06-15T13:45:30 -> juni 2009 (en-US)

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

2009-06-15T13:45:30 -> Juni 2009 (id-ID)
Een ander enkel teken Onbekende aanduiding. Genereert een runtime FormatException.

Hoe standaardnotatietekenreeksen werken

In een opmaakbewerking is een standaardnotatietekenreeks gewoon een alias voor een aangepaste notatietekenreeks. Het voordeel van het gebruik van een alias om te verwijzen naar een tekenreeks met aangepaste notatie is dat, hoewel de alias invariant blijft, de tekenreeks van de aangepaste indeling zelf kan variëren. Dit is belangrijk omdat de tekenreeksweergaven van datum- en tijdwaarden doorgaans verschillen per cultuur. De standaardnotatietekenreeks 'd' geeft bijvoorbeeld aan dat een datum- en tijdwaarde moet worden weergegeven met behulp van een kort datumpatroon. Voor de invariante cultuur is dit patroon 'MM/dd/jjjj'. Voor de fr-FR-cultuur is het "dd/MM/jjjj". Voor de ja-JP-cultuur is het "jjjj/MM/dd".

Als een standaardnotatietekenreeks in een opmaakbewerking wordt toegewezen aan de aangepaste notatietekenreeks van een bepaalde cultuur, kan uw toepassing de specifieke cultuur definiëren waarvan tekenreeksen met aangepaste opmaak op een van de volgende manieren worden gebruikt:

  • U kunt de standaardcultuur (of de huidige cultuur) gebruiken. In het volgende voorbeeld wordt een datum weergegeven met de korte datumnotatie van de huidige cultuur. In dit geval is de huidige cultuur 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
    
  • U kunt een CultureInfo object dat de cultuur vertegenwoordigt waarvan de opmaak moet worden gebruikt, doorgeven aan een methode die een IFormatProvider parameter heeft. In het volgende voorbeeld wordt een datum weergegeven met de korte datumnotatie van de pt-BR-cultuur.

    // 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
    
  • U kunt een DateTimeFormatInfo object met opmaakgegevens doorgeven aan een methode met een IFormatProvider parameter. In het volgende voorbeeld wordt een datum weergegeven met de korte datumnotatie van een DateTimeFormatInfo object voor de hr-HR-cultuur.

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

Notitie

Zie het klasseonderwerp voor informatie over het aanpassen van de patronen of tekenreeksen die worden gebruikt bij het NumberFormatInfo opmaken van datum- en tijdwaarden.

In sommige gevallen fungeert de standaardnotatietekenreeks als een handige afkorting voor een langere aangepaste notatietekenreeks die invariant is. Vier standaardnotatietekenreeksen vallen in deze categorie: 'O' (of 'o'), 'R' (of 'r'), 's' en 'u'. Deze tekenreeksen komen overeen met aangepaste notatietekenreeksen die zijn gedefinieerd door de invariante cultuur. Ze produceren tekenreeksweergaven van datum- en tijdwaarden die zijn bedoeld om identiek te zijn in verschillende culturen. De volgende tabel bevat informatie over deze vier standaard tekenreeksen voor datum- en tijdnotatie.

Standaardnotatietekenreeks Gedefinieerd door de eigenschap DateTimeFormatInfo.InvariantInfo Tekenreeks met aangepaste opmaak
"O" of "o" Geen jjjj'-'MM'-'dd'T'UU':'mm':'ss'.' fffffffK
"R" of "r" RFC1123Pattern ddd, dd MMM jjjj UU':'mm':'ss 'GMT'
"s" SortableDateTimePattern jjjj'-'MM'-'dd'T'UU':'mm':'ss
"u" UniversalSortableDateTimePattern jjjj'-'MM'-'dd uu':'mm':'ss'Z'

Tekenreeksen in de standaardindeling kunnen ook worden gebruikt bij het parseren van bewerkingen met de DateTime.ParseExact methoden of DateTimeOffset.ParseExact , waarvoor een invoertekenreeks precies moet voldoen aan een bepaald patroon om de parseerbewerking te laten slagen. Veel tekenreeksen met standaardnotatie worden toegewezen aan meerdere tekenreeksen met aangepaste notaties, zodat een datum- en tijdwaarde in verschillende indelingen kan worden weergegeven en de parseringsbewerking nog steeds slaagt. U kunt de aangepaste notatietekenreeks of tekenreeksen bepalen die overeenkomen met een standaardnotatietekenreeks door de DateTimeFormatInfo.GetAllDateTimePatterns(Char) methode aan te roepen. In het volgende voorbeeld worden de aangepaste notatietekenreeksen weergegeven die zijn toegewezen aan de standaardnotatietekenreeks 'd' (kort datumpatroon).

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

In de volgende secties worden de standaardindelingsaanduidingen voor DateTime en DateTimeOffset -waarden beschreven.

Datumnotaties

Deze groep bevat de volgende indelingen:

De korte datumnotatie ('d')

De standaardnotatieaanduiding 'd' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die is gedefinieerd door de eigenschap van DateTimeFormatInfo.ShortDatePattern een specifieke cultuur. De aangepaste notatietekenreeks die wordt geretourneerd door de ShortDatePattern eigenschap van de invariante cultuur is bijvoorbeeld 'MM/dd/jjjj'.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks bepalen.

Eigenschap Beschrijving
ShortDatePattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
DateSeparator Hiermee definieert u de tekenreeks die de jaar-, maand- en dagonderdelen van een datum scheidt.

In het volgende voorbeeld wordt de notatieaanduiding 'd' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De lange datumnotatie ('D')

De standaardnotatieaanduiding 'D' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de huidige DateTimeFormatInfo.LongDatePattern eigenschap. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'dddd, dd MMMM jjjj'.

De volgende tabel bevat de eigenschappen van het DateTimeFormatInfo object dat de opmaak van de geretourneerde tekenreeks bepaalt.

Eigenschap Beschrijving
LongDatePattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
DayNames Definieert de gelokaliseerde dagnamen die kunnen worden weergegeven in de resultaatreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.

In het volgende voorbeeld wordt de notatieaanduiding 'D' gebruikt om een datum- en tijdwaarde weer te geven.

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                        

Terug naar tabel

Datum- en tijdnotaties

Deze groep bevat de volgende indelingen:

De volledige datumnotatie ('f')

De standaardnotatieaanduiding 'f' vertegenwoordigt een combinatie van de lange datumpatronen (D) en korte tijd (t), gescheiden door een spatie.

De resultaatreeks wordt beïnvloed door de opmaakgegevens van een specifiek DateTimeFormatInfo object. De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste notatieaanduiding die wordt geretourneerd door de DateTimeFormatInfo.LongDatePattern eigenschappen en DateTimeFormatInfo.ShortTimePattern van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
LongDatePattern Definieert de notatie van het datumonderdeel van de resultaattekenreeks.
ShortTimePattern Hiermee definieert u de notatie van het tijdonderdeel van de resultaattekenreeks.
DayNames Definieert de gelokaliseerde dagnamen die kunnen worden weergegeven in de resultaatreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.
TimeSeparator Definieert de tekenreeks die het uur, de minuut en de tweede onderdelen van een tijd scheidt.
AMDesignator Definieert de tekenreeks die tijden aangeeft van middernacht tot voor 12-uurstijd.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 's middags tot voor middernacht in een 12-uurs klok.

In het volgende voorbeeld wordt de notatieaanduiding 'f' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De volledige datum lange tijd ('F')-notatie

De standaardnotatieaanduiding 'F' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de huidige DateTimeFormatInfo.FullDateTimePattern eigenschap. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'dddd, dd MMMM jjjj UU:mm:ss'.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste notatieaanduiding die wordt geretourneerd door de FullDateTimePattern eigenschap van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
FullDateTimePattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
DayNames Definieert de gelokaliseerde dagnamen die kunnen worden weergegeven in de resultaatreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.
TimeSeparator Definieert de tekenreeks die het uur, de minuut en de tweede onderdelen van een tijd scheidt.
AMDesignator Definieert de tekenreeks die tijden aangeeft van middernacht tot voor 12-uurstijd.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 's middags tot voor middernacht in een 12-uurs klok.

In het volgende voorbeeld wordt de indelingsaanduiding 'F' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De algemene datumnotatie ('g')

De standaardnotatieaanduiding 'g' vertegenwoordigt een combinatie van de korte datumpatronen ('d') en korte tijdpatronen ('t'),, gescheiden door een spatie.

De resultaattekenreeks wordt beïnvloed door de opmaakgegevens van een specifiek DateTimeFormatInfo object. De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste notatieaanduiding die wordt geretourneerd door de DateTimeFormatInfo.ShortDatePattern eigenschappen en DateTimeFormatInfo.ShortTimePattern van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
ShortDatePattern Definieert de notatie van het datumonderdeel van de resultaattekenreeks.
ShortTimePattern Hiermee definieert u de notatie van het tijdonderdeel van de resultaattekenreeks.
DateSeparator Hiermee definieert u de tekenreeks die de jaar-, maand- en dagonderdelen van een datum scheidt.
TimeSeparator Definieert de tekenreeks die het uur, de minuut en de tweede onderdelen van een tijd scheidt.
AMDesignator Definieert de tekenreeks die tijden aangeeft van middernacht tot voor 12-uurstijd.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 's middags tot voor middernacht in een 12-uurs klok.

In het volgende voorbeeld wordt de notatieaanduiding 'g' gebruikt om een datum- en tijdwaarde weer te geven.

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                        

Terug naar tabel

De algemene datum-lange tijdnotatie ('G')

De standaardnotatieaanduiding 'G' vertegenwoordigt een combinatie van de korte datumpatronen ('d') en lange tijd ('T'),, gescheiden door een spatie.

De resultaattekenreeks wordt beïnvloed door de opmaakgegevens van een specifiek DateTimeFormatInfo object. De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste notatieaanduiding die wordt geretourneerd door de DateTimeFormatInfo.ShortDatePattern eigenschappen en DateTimeFormatInfo.LongTimePattern van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
ShortDatePattern Definieert de notatie van het datumonderdeel van de resultaattekenreeks.
LongTimePattern Hiermee definieert u de notatie van het tijdonderdeel van de resultaattekenreeks.
DateSeparator Hiermee definieert u de tekenreeks die de jaar-, maand- en dagonderdelen van een datum scheidt.
TimeSeparator Definieert de tekenreeks die het uur, de minuut en de tweede onderdelen van een tijd scheidt.
AMDesignator Definieert de tekenreeks die tijden aangeeft van middernacht tot voor 12-uurstijd.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 's middags tot voor middernacht in een 12-uurs klok.

In het volgende voorbeeld wordt de notatieaanduiding 'G' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De indelingsaanduiding voor de retour ("O", "o")

De standaardnotatieaanduiding 'O' of 'o' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie met behulp van een patroon waarmee tijdzonegegevens behouden blijven en een resultaattekenreeks wordt verzonden die voldoet aan ISO 8601. Voor DateTime waarden is deze notatieaanduiding ontworpen om datum- en tijdwaarden samen met de DateTime.Kind eigenschap in tekst te behouden. De opgemaakte tekenreeks kan worden geparseerd met behulp van de DateTime.Parse(String, IFormatProvider, DateTimeStyles) methode of DateTime.ParseExact als de styles parameter is ingesteld op DateTimeStyles.RoundtripKind.

De standaardnotatie "O" of "o" komt overeen met de "jjjj'-'MM'-'dd'T'UU':'mm':'ss'.' Aangepaste notatietekenreeks fffffffK voor DateTime waarden en voor de 'jjjj'-'MM'-'dd'T'UU':'mm':'ss'.' fffffffzzz" aangepaste notatietekenreeks voor DateTimeOffset waarden. In deze tekenreeks geven de paar enkele aanhalingstekens waarmee afzonderlijke tekens worden gescheiden, zoals de afbreekstreepjes, de dubbele puntjes en de letter 'T', aan dat het afzonderlijke teken een letterlijke waarde is die niet kan worden gewijzigd. De apostroffen worden niet weergegeven in de uitvoertekenreeks.

De standaardnotatie "O" of "o" (en de "jjjj'-'MM'-'dd'T'HH':'mm':'ss'.' fffffffK" aangepaste notatietekenreeks) maakt gebruik van de drie manieren waarop ISO 8601 tijdzone-informatie vertegenwoordigt om de Kind eigenschap van DateTime waarden te behouden:

  • Het tijdzoneonderdeel van DateTimeKind.Local datum- en tijdwaarden is een verschuiving van UTC (bijvoorbeeld +01:00, -07:00). Alle DateTimeOffset waarden worden ook in deze indeling weergegeven.

  • Het tijdzoneonderdeel van DateTimeKind.Utc datum- en tijdwaarden gebruikt 'Z' (wat staat voor nul offset) om UTC weer te geven.

  • DateTimeKind.Unspecified datum- en tijdwaarden hebben geen informatie over de tijdzone.

Omdat de standaardnotatieaanduiding 'O' of 'o' voldoet aan een internationale standaard, wordt bij de opmaak- of parseringsbewerking die gebruikmaakt van de aanduiding altijd de invariante cultuur en de Gregoriaanse kalender gebruikt.

Tekenreeksen die worden doorgegeven aan de Parsemethoden , TryParse, ParseExacten TryParseExact van DateTime en DateTimeOffset kunnen worden geparseerd met behulp van de indeling 'O' of 'o' als ze een van deze indelingen hebben. In het geval van DateTime objecten moet de parseringsoverbelasting die u aanroept, ook een styles parameter bevatten met de waarde .DateTimeStyles.RoundtripKind Houd er rekening mee dat als u een parseringsmethode aanroept met de aangepaste notatietekenreeks die overeenkomt met de notatieaanduiding 'O' of 'o', u niet dezelfde resultaten krijgt als 'O' of 'o'. Dit komt doordat parseringsmethoden die een tekenreeks met aangepaste notatie gebruiken, de tekenreeksweergave van datum- en tijdwaarden die geen tijdzoneonderdeel hebben, niet kunnen parseren of 'Z' gebruiken om UTC aan te geven.

In het volgende voorbeeld wordt de indelingsaanduiding 'o' gebruikt om een reeks DateTime waarden en een DateTimeOffset waarde weer te geven op een systeem in de Amerikaanse 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

In het volgende voorbeeld wordt de notatieaanduiding 'o' gebruikt om een opgemaakte tekenreeks te maken en wordt vervolgens de oorspronkelijke datum- en tijdwaarde hersteld door een datum- en tijdmethode Parse aan te roepen.

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

Terug naar tabel

De RFC1123 -indeling ('R', 'r')

De standaardnotatieaanduiding 'R' of 'r' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de DateTimeFormatInfo.RFC1123Pattern eigenschap. Het patroon weerspiegelt een gedefinieerde standaard en de eigenschap is alleen-lezen. Daarom is het altijd hetzelfde, ongeacht de gebruikte cultuur of de opgegeven indelingsprovider. De aangepaste notatietekenreeks is 'ddd, dd MMM jjjj uu':'mm':'ss 'GMT''. Wanneer deze standaardnotatieaanduiding wordt gebruikt, gebruikt de opmaak- of parseringsbewerking altijd de invariante cultuur.

De resultaattekenreeks wordt beïnvloed door de volgende eigenschappen van het DateTimeFormatInfo object dat wordt geretourneerd door de DateTimeFormatInfo.InvariantInfo eigenschap die de invariante cultuur vertegenwoordigt.

Eigenschap Beschrijving
RFC1123Pattern Hiermee definieert u de indeling van de resultaattekenreeks.
AbbreviatedDayNames Definieert de verkorte dagnamen die kunnen worden weergegeven in de resultaattekenreeks.
AbbreviatedMonthNames Hiermee definieert u de verkorte maandnamen die kunnen worden weergegeven in de resultaattekenreeks.

Hoewel de RFC 1123-standaard een tijd uitdrukt als Coordinated Universal Time (UTC), wijzigt de opmaakbewerking de waarde van het DateTime object dat wordt opgemaakt niet. Daarom moet u de DateTime waarde converteren naar UTC door de DateTime.ToUniversalTime methode aan te roepen voordat u de opmaakbewerking uitvoert. Waarden voeren deze conversie daarentegen DateTimeOffset automatisch uit. Het is niet nodig om de DateTimeOffset.ToUniversalTime methode aan te roepen vóór de opmaakbewerking.

In het volgende voorbeeld wordt de indelingsaanduiding 'r' gebruikt om een DateTime en een DateTimeOffset waarde weer te geven in een systeem in de Amerikaanse 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                        

Terug naar tabel

De aanduiding voor de sorteerbare notatie ('s')

De standaardnotatieaanduiding 's' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de DateTimeFormatInfo.SortableDateTimePattern eigenschap. Het patroon weerspiegelt een gedefinieerde standaard (ISO 8601) en de eigenschap is alleen-lezen. Daarom is het altijd hetzelfde, ongeacht de gebruikte cultuur of de opgegeven indelingsprovider. De aangepaste notatietekenreeks is 'jjjj'-'MM'-'dd'T'UU':'mm':'ss'.

Het doel van de indelingsaanduiding 's' is het produceren van resultaattekenreeksen die consistent in oplopende of aflopende volgorde sorteren op basis van datum- en tijdwaarden. Als gevolg hiervan, hoewel de standaardnotatieaanduiding 's' een datum- en tijdwaarde in een consistente notatie vertegenwoordigt, wordt met de opmaakbewerking de waarde niet gewijzigd van het datum- en tijdobject dat wordt opgemaakt om de eigenschap of de waarde ervan weer te geven DateTime.KindDateTimeOffset.Offset . De resultaatreeksen die worden geproduceerd door de datum- en tijdwaarden 2014-11-15T18:32:17+00:00 en 2014-11-15T18:32:17+08:00 zijn bijvoorbeeld identiek.

Wanneer deze standaardnotatieaanduiding wordt gebruikt, wordt voor de opmaak- of parseringsbewerking altijd de invariante cultuur gebruikt.

In het volgende voorbeeld wordt de indelingsaanduiding 's' gebruikt om een DateTime en een DateTimeOffset waarde weer te geven op een systeem in de Amerikaanse 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                       

Terug naar tabel

De universal sortable (u)-indelingsaanduiding

De standaardnotatieaanduiding 'u' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de DateTimeFormatInfo.UniversalSortableDateTimePattern eigenschap . Het patroon weerspiegelt een gedefinieerde standaard en de eigenschap heeft het kenmerk Alleen-lezen. Daarom is het altijd hetzelfde, ongeacht de cultuur die wordt gebruikt of de opgegeven indelingsprovider. De aangepaste notatietekenreeks is "jjjj'-'MM'-'dd UU':'mm':'ss'Z'". Wanneer deze standaardnotatieaanduiding wordt gebruikt, wordt voor de opmaak- of parseringsbewerking altijd de invariante cultuur gebruikt.

Hoewel de resultaatreeks een tijd moet uitdrukken als Coordinated Universal Time (UTC), wordt er geen conversie van de oorspronkelijke DateTime waarde uitgevoerd tijdens de opmaakbewerking. Daarom moet u een DateTime waarde converteren naar UTC door de methode aan te roepen voordat u deze DateTime.ToUniversalTime opmaakt. Waarden voeren deze conversie daarentegen DateTimeOffset automatisch uit. Het is niet nodig om de DateTimeOffset.ToUniversalTime methode aan te roepen vóór de opmaakbewerking.

In het volgende voorbeeld wordt de notatieaanduiding 'u' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De universal full (U)-indelingsaanduiding

De standaardnotatieaanduiding 'U' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die is gedefinieerd door de eigenschap van DateTimeFormatInfo.FullDateTimePattern een opgegeven cultuur. Het patroon is hetzelfde als het patroon 'F'. De DateTime waarde wordt echter automatisch geconverteerd naar UTC voordat deze wordt opgemaakt.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste indelingsaanduiding die wordt geretourneerd door de FullDateTimePattern eigenschap van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
FullDateTimePattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
DayNames Definieert de gelokaliseerde dagnamen die kunnen worden weergegeven in de resultaatreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.
TimeSeparator Hiermee definieert u de tekenreeks die de uur-, minuut- en tweede onderdelen van een tijd scheidt.
AMDesignator Hiermee definieert u de tekenreeks die tijden aangeeft van middernacht tot 12-uurs klok.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 12 uur 's middags tot vóór middernacht.

De aanduiding 'U'-indeling wordt niet ondersteund door het DateTimeOffset type en genereert een FormatException als deze wordt gebruikt om een DateTimeOffset waarde op te maken.

In het volgende voorbeeld wordt de aanduiding U-notatie gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

Tijdnotaties

Deze groep bevat de volgende indelingen:

De aanduiding voor de korte tijdnotatie ('t')

De standaardnotatieaanduiding 't' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de huidige DateTimeFormatInfo.ShortTimePattern eigenschap. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'UU:mm'.

De resultaatreeks wordt beïnvloed door de opmaakgegevens van een specifiek DateTimeFormatInfo object. De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste indelingsaanduiding die wordt geretourneerd door de DateTimeFormatInfo.ShortTimePattern eigenschap van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
ShortTimePattern Hiermee definieert u de notatie van het tijdonderdeel van de resultaattekenreeks.
TimeSeparator Hiermee definieert u de tekenreeks die de uur-, minuut- en tweede onderdelen van een tijd scheidt.
AMDesignator Hiermee definieert u de tekenreeks die tijden aangeeft van middernacht tot 12-uurs klok.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 12 uur 's middags tot vóór middernacht.

In het volgende voorbeeld wordt de notatieaanduiding 't' gebruikt om een datum- en tijdwaarde weer te geven.

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                      

Terug naar tabel

De aanduiding lange tijdnotatie ('T')

De standaardnotatieaanduiding 'T' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die is gedefinieerd door de eigenschap van DateTimeFormatInfo.LongTimePattern een specifieke cultuur. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'UU:mm:ss'.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks kunnen bepalen. De aangepaste indelingsaanduiding die wordt geretourneerd door de DateTimeFormatInfo.LongTimePattern eigenschap van sommige culturen, maakt mogelijk niet gebruik van alle eigenschappen.

Eigenschap Beschrijving
LongTimePattern Hiermee definieert u de notatie van het tijdonderdeel van de resultaattekenreeks.
TimeSeparator Hiermee definieert u de tekenreeks die de uur-, minuut- en tweede onderdelen van een tijd scheidt.
AMDesignator Hiermee definieert u de tekenreeks die tijden aangeeft van middernacht tot 12-uurs klok.
PMDesignator Definieert de tekenreeks die tijden aangeeft van 12 uur 's middags tot vóór middernacht.

In het volgende voorbeeld wordt de notatieaanduiding 'T' gebruikt om een datum- en tijdwaarde weer te geven.

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                      

Terug naar tabel

Gedeeltelijke datumnotaties

Deze groep bevat de volgende indelingen:

De aanduiding voor de maandnotatie ('M', 'm')

De standaardnotatieaanduiding 'M' of 'm' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de huidige DateTimeFormatInfo.MonthDayPattern eigenschap. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'MMMM dd'.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks bepalen.

Eigenschap Beschrijving
MonthDayPattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.

In het volgende voorbeeld wordt de notatieaanduiding 'm' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

De jaarnotatie ('Y', 'y')

De standaardnotatieaanduiding 'Y' of 'y' vertegenwoordigt een aangepaste tekenreeks voor datum- en tijdnotatie die wordt gedefinieerd door de DateTimeFormatInfo.YearMonthPattern eigenschap van een opgegeven cultuur. De aangepaste notatietekenreeks voor de invariante cultuur is bijvoorbeeld 'jjjj MMMM'.

De volgende tabel bevat de DateTimeFormatInfo objecteigenschappen die de opmaak van de geretourneerde tekenreeks bepalen.

Eigenschap Beschrijving
YearMonthPattern Hiermee definieert u de algehele indeling van de resultaattekenreeks.
MonthNames Definieert de gelokaliseerde maandnamen die kunnen worden weergegeven in de resultaattekenreeks.

In het volgende voorbeeld wordt de notatieaanduiding 'y' gebruikt om een datum- en tijdwaarde weer te geven.

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                       

Terug naar tabel

Configuratiescherm-instellingen

In Windows zijn de instellingen in het item Land- en taalopties in Configuratiescherm van invloed op de resultaatreeks die door een opmaakbewerking wordt geproduceerd. Deze instellingen worden gebruikt voor het initialiseren van het DateTimeFormatInfo object dat is gekoppeld aan de huidige cultuur, dat waarden biedt die worden gebruikt voor het bepalen van de opmaak. Computers met verschillende instellingen genereren verschillende resultaatreeksen.

Als u bovendien de CultureInfo(String) constructor gebruikt om een nieuw CultureInfo object te instantiëren dat dezelfde cultuur vertegenwoordigt als de huidige systeemcultuur, worden alle aanpassingen die door het item Landinstellingen in Configuratiescherm zijn gemaakt, toegepast op het nieuwe CultureInfo object. U kunt de CultureInfo(String, Boolean) constructor gebruiken om een CultureInfo object te maken dat niet overeenkomt met de aanpassingen van een systeem.

Eigenschappen van DateTimeFormatInfo

De opmaak wordt beïnvloed door eigenschappen van het huidige DateTimeFormatInfo object, dat impliciet wordt geleverd door de huidige cultuur of expliciet door de IFormatProvider parameter van de methode die opmaak aanroept. Voor de IFormatProvider parameter moet uw toepassing een CultureInfo -object opgeven, dat een cultuur vertegenwoordigt, of een DateTimeFormatInfo object, dat de datum- en tijdconventies van een bepaalde cultuur vertegenwoordigt. Veel van de standaardaanduidingen voor datum- en tijdnotatie zijn aliassen voor opmaakpatronen die zijn gedefinieerd door eigenschappen van het huidige DateTimeFormatInfo object. Uw toepassing kan het resultaat wijzigen dat wordt geproduceerd door sommige standaardaanduidingen voor datum- en tijdnotatie door de bijbehorende datum- en tijdnotatiepatronen van de bijbehorende eigenschap te DateTimeFormatInfo wijzigen.

Zie ook