DateTime.TryParse Metódus

Definíció

Egy dátum és idő megadott sztringképét konvertálja annak DateTime megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

Túlterhelések

Name Description
TryParse(ReadOnlySpan<Char>, DateTime)

Egy dátum és idő megadott karaktertartományát a megfelelő értékké DateTime alakítja, és egy értéket ad vissza, amely jelzi, hogy az átalakítás sikeres volt-e.

TryParse(String, DateTime)

Egy dátum és idő megadott sztringképét konvertálja annak DateTime megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

TryParse(ReadOnlySpan<Char>, IFormatProvider, DateTime)

Egy karaktertartományt próbál elemezni egy értékben.

TryParse(String, IFormatProvider, DateTime)

Megpróbál egy sztringet egy értékbe elemezni.

TryParse(String, IFormatProvider, DateTimeStyles, DateTime)

Egy dátum és idő megadott sztringképét a megadott kultúraspecifikus formátumadatok és formázási stílus használatával konvertálja DateTime annak megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

TryParse(ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles, DateTime)

A megadott kultúraspecifikus formátumadatok és formázási stílus használatával konvertálja egy dátum és idő DateTime span ábrázolását annak megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

Megjegyzések

Important

A japán naptárak korszakai a császár uralkodásán alapulnak, ezért várhatóan megváltoznak. 2019. május 1-jén például a Reiwa-korszak kezdetét jelentette JapaneseCalendar és JapaneseLunisolarCalendar. Az ilyen korszakváltás minden olyan alkalmazást érint, amely ezeket a naptárakat használja. További információkért és annak megállapításához, hogy az alkalmazások érintettek-e, olvassa el az Új korszak kezelése a japán naptárban a .NET-ben című témakört. Az alkalmazások windowsos rendszereken való tesztelésével kapcsolatos információkért, amelyek biztosítják, hogy felkészültek legyenek a korszakváltásra, olvassa el az alkalmazás előkészítése a japán korszakváltásra című témakört. A több korszakot támogató naptárakat támogató .NET-funkciókért és a több korszakot támogató naptárak használatakor ajánlott eljárásokért lásd: Korszakok használata.

TryParse(ReadOnlySpan<Char>, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

Egy dátum és idő megadott karaktertartományát a megfelelő értékké DateTime alakítja, és egy értéket ad vissza, amely jelzi, hogy az átalakítás sikeres volt-e.

public:
 static bool TryParse(ReadOnlySpan<char> s, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParse(ReadOnlySpan<char> s, out DateTime result);
static member TryParse : ReadOnlySpan<char> * DateTime -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), ByRef result As DateTime) As Boolean

Paraméterek

s
ReadOnlySpan<Char>

Dátumot és időt tartalmazó sztring az átalakításhoz.

result
DateTime

Ha ez a metódus visszaadja, a DateTime dátummal és idővel segyenértékű értéket tartalmazza, ha az átalakítás sikeres volt, vagy a DateTime.MinValue értéket, ha az átalakítás sikertelen volt. Az átalakítás meghiúsul, ha a s paraméter nullüres sztring (""), vagy nem tartalmaz dátum és idő érvényes sztring-ábrázolását. Ez a paraméter nem inicializálva lesz átadva.

Válaszok

trueha a s paraméter konvertálása sikeresen megtörtént; ellenkező esetben. false

A következőre érvényes:

TryParse(String, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

Egy dátum és idő megadott sztringképét konvertálja annak DateTime megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

public:
 static bool TryParse(System::String ^ s, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParse(string s, out DateTime result);
public static bool TryParse(string? s, out DateTime result);
static member TryParse : string * DateTime -> bool
Public Shared Function TryParse (s As String, ByRef result As DateTime) As Boolean

Paraméterek

s
String

Dátumot és időt tartalmazó sztring az átalakításhoz.

result
DateTime

Ha ez a metódus visszaadja, a DateTime dátummal és idővel segyenértékű értéket tartalmazza, ha az átalakítás sikeres volt, vagy a DateTime.MinValue értéket, ha az átalakítás sikertelen volt. Az átalakítás meghiúsul, ha a s paraméter nullüres sztring (""), vagy nem tartalmaz dátum és idő érvényes sztring-ábrázolását. Ez a paraméter nem inicializálva lesz átadva.

Válaszok

trueha a s paraméter konvertálása sikeresen megtörtént; ellenkező esetben. false

Példák

Az alábbi példa számos dátum- és idősztringet ad át a DateTime.TryParse(String, DateTime) metódusnak.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] dateStrings = {"05/01/2009 14:57:32.8", "2009-05-01 14:57:32.8",
                              "2009-05-01T14:57:32.8375298-04:00", "5/01/2008",
                              "5/01/2008 14:57:32.80 -07:00",
                              "1 May 2008 2:57:32.8 PM", "16-05-2009 1:00:32 PM",
                              "Fri, 15 May 2009 20:10:57 GMT" };
      DateTime dateValue;

      Console.WriteLine("Attempting to parse strings using {0} culture.",
                        CultureInfo.CurrentCulture.Name);
      foreach (string dateString in dateStrings)
      {
         if (DateTime.TryParse(dateString, out dateValue))
            Console.WriteLine("  Converted '{0}' to {1} ({2}).", dateString,
                              dateValue, dateValue.Kind);
         else
            Console.WriteLine("  Unable to parse '{0}'.", dateString);
      }
   }
}
// The example displays output like the following:
//    Attempting to parse strings using en-US culture.
//      Converted '05/01/2009 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
//      Converted '2009-05-01 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
//      Converted '2009-05-01T14:57:32.8375298-04:00' to 5/1/2009 11:57:32 AM (Local).
//
//      Converted '5/01/2008' to 5/1/2008 12:00:00 AM (Unspecified).
//      Converted '5/01/2008 14:57:32.80 -07:00' to 5/1/2008 2:57:32 PM (Local).
//      Converted '1 May 2008 2:57:32.8 PM' to 5/1/2008 2:57:32 PM (Unspecified).
//      Unable to parse '16-05-2009 1:00:32 PM'.
//      Converted 'Fri, 15 May 2009 20:10:57 GMT' to 5/15/2009 1:10:57 PM (Local).
open System
open System.Globalization

let dateStrings = 
    [ "05/01/2009 14:57:32.8"; "2009-05-01 14:57:32.8"
      "2009-05-01T14:57:32.8375298-04:00"; "5/01/2008"
      "5/01/2008 14:57:32.80 -07:00"
      "1 May 2008 2:57:32.8 PM"; "16-05-2009 1:00:32 PM"
      "Fri, 15 May 2009 20:10:57 GMT" ]

printfn $"Attempting to parse strings using {CultureInfo.CurrentCulture.Name} culture."
for dateString in dateStrings do
    match DateTime.TryParse dateString with
    | true, dateValue ->
        printfn $"  Converted '{dateString}' to {dateValue} ({dateValue.Kind})."
    | _ ->
        printfn $"  Unable to parse '{dateString}'."


// The example displays output like the following:
//    Attempting to parse strings using en-US culture.
//      Converted '05/01/2009 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
//      Converted '2009-05-01 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
//      Converted '2009-05-01T14:57:32.8375298-04:00' to 5/1/2009 11:57:32 AM (Local).
//      Converted '5/01/2008' to 5/1/2008 12:00:00 AM (Unspecified).
//      Converted '5/01/2008 14:57:32.80 -07:00' to 5/1/2008 2:57:32 PM (Local).
//      Converted '1 May 2008 2:57:32.8 PM' to 5/1/2008 2:57:32 PM (Unspecified).
//      Unable to parse '16-05-2009 1:00:32 PM'.
//      Converted 'Fri, 15 May 2009 20:10:57 GMT' to 5/15/2009 1:10:57 PM (Local).
Imports System.Globalization

Public Module Example
   Public Sub Main()
      Dim dateStrings() As String = {"05/01/2009 14:57:32.8", "2009-05-01 14:57:32.8",
                                     "2009-05-01T14:57:32.8375298-04:00", "5/01/2008",
                                     "5/01/2008 14:57:32.80 -07:00",
                                     "1 May 2008 2:57:32.8 PM", "16-05-2009 1:00:32 PM",
                                     "Fri, 15 May 2009 20:10:57 GMT"}
      Dim dateValue As Date
      
      Console.WriteLine("Attempting to parse strings using {0} culture.", _
                        CultureInfo.CurrentCulture.Name)
      For Each dateString As String In dateStrings
         If Date.TryParse(dateString, dateValue) Then
            Console.WriteLine("  Converted '{0}' to {1} ({2}).", dateString, _
                              dateValue, dateValue.Kind)
         Else
            Console.WriteLine("  Unable to parse '{0}'.", dateString)
         End If
      Next
   End Sub
End Module
' The example displays output like the following:
'    Attempting to parse strings using en-US culture.
'      Converted '05/01/2009 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
'      Converted '2009-05-01 14:57:32.8' to 5/1/2009 2:57:32 PM (Unspecified).
'      Converted '2009-05-01T14:57:32.8375298-04:00' to 5/1/2009 11:57:32 AM (Local).
'
'      Converted '5/01/2008' to 5/1/2008 12:00:00 AM (Unspecified).
'      Converted '5/01/2008 14:57:32.80 -07:00' to 5/1/2008 2:57:32 PM (Local).
'      Converted '1 May 2008 2:57:32.8 PM' to 5/1/2008 2:57:32 PM (Unspecified).
'      Unable to parse '16-05-2009 1:00:32 PM'.
'      Converted 'Fri, 15 May 2009 20:10:57 GMT' to 5/15/2009 1:10:57 PM (Local).

Megjegyzések

A DateTime.TryParse(String, DateTime) metódus hasonló a DateTime.Parse(String) metódushoz, azzal a kivétellel, hogy a TryParse(String, DateTime) metódus nem ad kivételt, ha az átalakítás sikertelen.

A sztring s az aktuális DateTimeFormatInfo objektum formázási információinak használatával van elemezve, amelyet az aktuális kultúra implicit módon biztosít.

Ez a metódus lehetőség szerint megpróbálja figyelmen kívül hagyni a nem felismert adatokat, és kitölti a hiányzó hónap-, nap- és évadatokat az aktuális dátummal. Ha s csak dátumot tartalmaz, és nincs idő, akkor ez a metódus feltételezi, hogy az idő éjfél 12:00. Ha s egy kétjegyű évszámmal rendelkező dátumösszetevőt tartalmaz, akkor a rendszer a tulajdonság értéke alapján az aktuális kultúra aktuális naptárában egy évre konvertálja Calendar.TwoDigitYearMax . Minden kezdő, belső vagy záró szóköz karakter s figyelmen kívül lesz hagyva. A dátum és az idő elején és végén SZÁMJEL karakterek ('#', U+0023) szerepelnek, és követheti őket egy vagy több NULL karakter (U+0000).

Mivel a metódus az DateTime.TryParse(String, DateTime) aktuális kultúra formázási szabályaival próbálja elemezni egy dátum és idő sztringképét, egy adott sztring különböző kultúrák közötti elemzése sikertelen lehet, vagy eltérő eredményeket adhat vissza. Ha egy adott dátum- és időformátum különböző területi beállítások szerint lesz elemezve, használja a DateTime.TryParse(String, IFormatProvider, DateTimeStyles, DateTime) metódus vagy a metódus túlterheléseinek egyikét TryParseExact , és adjon meg egy formátumjelölőt.

Ha s a szökőnap sztring formája egy szökőévben az aktuális naptárban, a metódus sikeresen értelmezi s. Ha s egy szökőnap sztringje egy szökőévben az aktuális kultúra aktuális naptárában, az elemzési művelet meghiúsul, és a metódus visszatér false.

Ha s nem tartalmaz időzóna-információt, olyan értéket tartalmazresult, DateTime amelynek Kind tulajdonsága a metódus visszaadásakor vanDateTimeKind.Unspecified. Ha az elemezni kívánt sztring időzóna-információkat tartalmaz, olyan értéket tartalmazresult, DateTime amelynek Kind tulajdonsága a metódus visszatérésekor vanDateTimeKind.Local.

Megjegyzések a hívókhoz

A formázást az aktuális DateTimeFormatInfo objektum tulajdonságai befolyásolják, amelyek alapértelmezés szerint a Regionális és nyelvi beállítások elemből származnak Vezérlőpult. A TryParse metódus váratlanul meghiúsulhat, és visszatérhet False , ha az aktuális DateSeparator és TimeSeparator a tulajdonságok ugyanabba az értékre vannak beállítva.

Lásd még

A következőre érvényes:

TryParse(ReadOnlySpan<Char>, IFormatProvider, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

Egy karaktertartományt próbál elemezni egy értékben.

public:
 static bool TryParse(ReadOnlySpan<char> s, IFormatProvider ^ provider, [Runtime::InteropServices::Out] DateTime % result) = ISpanParsable<DateTime>::TryParse;
public static bool TryParse(ReadOnlySpan<char> s, IFormatProvider? provider, out DateTime result);
static member TryParse : ReadOnlySpan<char> * IFormatProvider * DateTime -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), provider As IFormatProvider, ByRef result As DateTime) As Boolean

Paraméterek

s
ReadOnlySpan<Char>

Az elemezni kívánt karakterek száma.

provider
IFormatProvider

Egy objektum, amely kultúraspecifikus formázási információkat tartalmaz a fájlról s.

result
DateTime

Amikor ez a metódus visszatér, a sikeres elemzés seredményét vagy a hiba egy nem definiált értékét tartalmazza.

Válaszok

trueha s sikeresen elemezték; ellenkező esetben. false

A következőre érvényes:

TryParse(String, IFormatProvider, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

Megpróbál egy sztringet egy értékbe elemezni.

public:
 static bool TryParse(System::String ^ s, IFormatProvider ^ provider, [Runtime::InteropServices::Out] DateTime % result) = IParsable<DateTime>::TryParse;
public static bool TryParse(string? s, IFormatProvider? provider, out DateTime result);
static member TryParse : string * IFormatProvider * DateTime -> bool
Public Shared Function TryParse (s As String, provider As IFormatProvider, ByRef result As DateTime) As Boolean

Paraméterek

s
String

Az elemezni kívánt sztring.

provider
IFormatProvider

Egy objektum, amely kultúraspecifikus formázási információkat tartalmaz a fájlról s.

result
DateTime

Amikor ez a metódus visszatér, a sikeres elemzés s eredményét vagy egy nem definiált hibát tartalmaz.

Válaszok

trueha s sikeresen elemezték; ellenkező esetben. false

A következőre érvényes:

TryParse(String, IFormatProvider, DateTimeStyles, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

Egy dátum és idő megadott sztringképét a megadott kultúraspecifikus formátumadatok és formázási stílus használatával konvertálja DateTime annak megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

public:
 static bool TryParse(System::String ^ s, IFormatProvider ^ provider, System::Globalization::DateTimeStyles styles, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParse(string s, IFormatProvider provider, System.Globalization.DateTimeStyles styles, out DateTime result);
public static bool TryParse(string? s, IFormatProvider? provider, System.Globalization.DateTimeStyles styles, out DateTime result);
static member TryParse : string * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParse (s As String, provider As IFormatProvider, styles As DateTimeStyles, ByRef result As DateTime) As Boolean

Paraméterek

s
String

Dátumot és időt tartalmazó sztring az átalakításhoz.

provider
IFormatProvider

Egy objektum, amely a kultúraspecifikus formázási sinformációkat tartalmazza.

styles
DateTimeStyles

Az enumerálási értékek bitenkénti kombinációja, amely meghatározza az elemezt dátum értelmezését az aktuális időzónához vagy az aktuális dátumhoz képest. Egy jellemzően megadható érték a következő None: .

result
DateTime

Ha ez a metódus visszaadja, a DateTime dátummal és idővel segyenértékű értéket tartalmazza, ha az átalakítás sikeres volt, vagy a DateTime.MinValue értéket, ha az átalakítás sikertelen volt. Az átalakítás meghiúsul, ha a s paraméter nullüres sztring (""), vagy nem tartalmaz dátum és idő érvényes sztring-ábrázolását. Ez a paraméter nem inicializálva lesz átadva.

Válaszok

trueha a s paraméter konvertálása sikeresen megtörtént; ellenkező esetben. false

Kivételek

styles érvénytelen DateTimeStyles érték.

-vagy-

styles érvénytelen értékkombinációt DateTimeStyles tartalmaz (például mindkettőt AssumeLocal és AssumeUniversal).

provider egy semleges kultúra, és nem használható elemzési műveletben.

Példák

Az alábbi példa a metódust szemlélteti DateTime.TryParse(String, IFormatProvider, DateTimeStyles, DateTime) .

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string dateString;
      CultureInfo culture;
      DateTimeStyles styles;
      DateTime dateResult;

      // Parse a date and time with no styles.
      dateString = "03/01/2009 10:00 AM";
      culture = CultureInfo.CreateSpecificCulture("en-US");
      styles = DateTimeStyles.None;
      if (DateTime.TryParse(dateString, culture, styles, out dateResult))
         Console.WriteLine("{0} converted to {1} {2}.",
                           dateString, dateResult, dateResult.Kind);
      else
         Console.WriteLine("Unable to convert {0} to a date and time.",
                           dateString);

      // Parse the same date and time with the AssumeLocal style.
      styles = DateTimeStyles.AssumeLocal;
      if (DateTime.TryParse(dateString, culture, styles, out dateResult))
         Console.WriteLine("{0} converted to {1} {2}.",
                           dateString, dateResult, dateResult.Kind);
      else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString);

      // Parse a date and time that is assumed to be local.
      // This time is five hours behind UTC. The local system's time zone is
      // eight hours behind UTC.
      dateString = "2009/03/01T10:00:00-5:00";
      styles = DateTimeStyles.AssumeLocal;
      if (DateTime.TryParse(dateString, culture, styles, out dateResult))
         Console.WriteLine("{0} converted to {1} {2}.",
                           dateString, dateResult, dateResult.Kind);
      else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString);

      // Attempt to convert a string in improper ISO 8601 format.
      dateString = "03/01/2009T10:00:00-5:00";
      if (DateTime.TryParse(dateString, culture, styles, out dateResult))
         Console.WriteLine("{0} converted to {1} {2}.",
                           dateString, dateResult, dateResult.Kind);
      else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString);

      // Assume a date and time string formatted for the fr-FR culture is the local
      // time and convert it to UTC.
      dateString = "2008-03-01 10:00";
      culture = CultureInfo.CreateSpecificCulture("fr-FR");
      styles = DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeLocal;
      if (DateTime.TryParse(dateString, culture, styles, out dateResult))
         Console.WriteLine("{0} converted to {1} {2}.",
                           dateString, dateResult, dateResult.Kind);
      else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString);
   }
}
// The example displays the following output to the console:
//       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Unspecified.
//       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Local.
//       2009/03/01T10:00:00-5:00 converted to 3/1/2009 7:00:00 AM Local.
//       Unable to convert 03/01/2009T10:00:00-5:00 to a date and time.
//       2008-03-01 10:00 converted to 3/1/2008 6:00:00 PM Utc.
open System
open System.Globalization

[<EntryPoint>]
let main _ =
    // Parse a date and time with no styles.
    let dateString = "03/01/2009 10:00 AM"
    let culture = CultureInfo.CreateSpecificCulture "en-US"
    let styles = DateTimeStyles.None
    match DateTime.TryParse(dateString, culture, styles) with
    | true, dateResult ->
        printfn $"{dateString} converted to {dateResult} {dateResult.Kind}."
    | _ -> 
        printfn $"Unable to convert {dateString} to a date and time."

    // Parse the same date and time with the AssumeLocal style.
    let styles = DateTimeStyles.AssumeLocal
    match DateTime.TryParse(dateString, culture, styles) with
    | true, dateResult ->
        printfn $"{dateString} converted to {dateResult} {dateResult.Kind}." 
    | _ ->
        printfn $"Unable to convert {dateString} to a date and time."

    // Parse a date and time that is assumed to be local.
    // This time is five hours behind UTC. The local system's time zone is
    // eight hours behind UTC.
    let dateString = "2009/03/01T10:00:00-5:00"
    let styles = DateTimeStyles.AssumeLocal
    match DateTime.TryParse(dateString, culture, styles) with
    | true, dateResult ->
        printfn $"{dateString} converted to {dateResult} {dateResult.Kind}."
    | _ ->
        printfn $"Unable to convert {dateString} to a date and time."

    // Attempt to convert a string in improper ISO 8601 format.
    let dateString = "03/01/2009T10:00:00-5:00"
    match DateTime.TryParse(dateString, culture, styles) with
    | true, dateResult ->
        printfn $"{dateString} converted to {dateResult} {dateResult.Kind}."
    | _ ->
        printfn $"Unable to convert {dateString} to a date and time."

    // Assume a date and time string formatted for the fr-FR culture is the local
    // time and convert it to UTC.
    let dateString = "2008-03-01 10:00"
    let culture = CultureInfo.CreateSpecificCulture "fr-FR"
    let styles = DateTimeStyles.AdjustToUniversal ||| DateTimeStyles.AssumeLocal
    match DateTime.TryParse(dateString, culture, styles) with
    | true, dateResult ->
        printfn $"{dateString} converted to {dateResult} {dateResult.Kind}." 
    | _ ->
        printfn $"Unable to convert {dateString} to a date and time."

    0

// The example displays the following output to the console:
//       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Unspecified.
//       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Local.
//       2009/03/01T10:00:00-5:00 converted to 3/1/2009 7:00:00 AM Local.
//       Unable to convert 03/01/2009T10:00:00-5:00 to a date and time.
//       2008-03-01 10:00 converted to 3/1/2008 6:00:00 PM Utc.
Imports System.Globalization

Public Module Example
   Public Sub Main()
      Dim dateString As String
      Dim culture As CultureInfo
      Dim styles As DateTimeStyles 
      Dim dateResult As DateTime
      
      ' Parse a date and time with no styles.
      dateString = "03/01/2009 10:00 AM"
      culture = CultureInfo.CreateSpecificCulture("en-US")
      styles = DateTimeStyles.None
      If DateTime.TryParse(dateString, culture, styles, dateResult) Then
         Console.WriteLine("{0} converted to {1} {2}.", _
                           dateString, dateResult, dateResult.Kind)
      Else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString)
      End If      
      
      ' Parse the same date and time with the AssumeLocal style.
      styles = DateTimeStyles.AssumeLocal
      If DateTime.TryParse(dateString, culture, styles, dateResult)
         Console.WriteLine("{0} converted to {1} {2}.", _
                           dateString, dateResult, dateResult.Kind)
      Else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString)
      End If      
      
      ' Parse a date and time that is assumed to be local.
      ' This time is five hours behind UTC. The local system's time zone is 
      ' eight hours behind UTC.
      dateString = "2009/03/01T10:00:00-5:00"
      styles = DateTimeStyles.AssumeLocal
      If DateTime.TryParse(dateString, culture, styles, dateResult)
         Console.WriteLine("{0} converted to {1} {2}.", _
                           dateString, dateResult, dateResult.Kind)
      Else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString)
      End If      
      
      ' Attempt to convert a string in improper ISO 8601 format.
      dateString = "03/01/2009T10:00:00-5:00"
      If DateTime.TryParse(dateString, culture, styles, dateResult)
         Console.WriteLine("{0} converted to {1} {2}.", _
                           dateString, dateResult, dateResult.Kind)
      Else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString)
      End If      

      ' Assume a date and time string formatted for the fr-FR culture is the local 
      ' time and convert it to UTC.
      dateString = "2008-03-01 10:00"
      culture = CultureInfo.CreateSpecificCulture("fr-FR")
      styles = DateTimeStyles.AdjustToUniversal Or DateTimeStyles.AssumeLocal
      If DateTime.TryParse(dateString, culture, styles, dateResult)
         Console.WriteLine("{0} converted to {1} {2}.", _
                           dateString, dateResult, dateResult.Kind)
      Else
         Console.WriteLine("Unable to convert {0} to a date and time.", dateString)
      End If      
   End Sub
End Module
' The example displays the following output to the console:
'       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Unspecified.
'       03/01/2009 10:00 AM converted to 3/1/2009 10:00:00 AM Local.
'       2009/03/01T10:00:00-5:00 converted to 3/1/2009 7:00:00 AM Local.
'       Unable to convert 03/01/2009T10:00:00-5:00 to a date and time.
'       2008-03-01 10:00 converted to 3/1/2008 6:00:00 PM Utc.

Megjegyzések

Az API-val kapcsolatos további információkért lásd a DateTime.TryParse kiegészítő API-megjegyzéseit.

Megjegyzések a hívókhoz

A formázást az aktuális DateTimeFormatInfo objektum tulajdonságai befolyásolják, amelyet a provider paraméter biztosít. A TryParse metódus váratlanul meghiúsulhat, és visszatérhet False , ha az aktuális DateSeparator és TimeSeparator a tulajdonságok ugyanabba az értékre vannak beállítva.

Lásd még

A következőre érvényes:

TryParse(ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles, DateTime)

Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs
Forrás:
DateTime.cs

A megadott kultúraspecifikus formátumadatok és formázási stílus használatával konvertálja egy dátum és idő DateTime span ábrázolását annak megfelelőjeként, és visszaad egy értéket, amely jelzi, hogy az átalakítás sikeres volt-e.

public:
 static bool TryParse(ReadOnlySpan<char> s, IFormatProvider ^ provider, System::Globalization::DateTimeStyles styles, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParse(ReadOnlySpan<char> s, IFormatProvider? provider, System.Globalization.DateTimeStyles styles, out DateTime result);
public static bool TryParse(ReadOnlySpan<char> s, IFormatProvider provider, System.Globalization.DateTimeStyles styles, out DateTime result);
static member TryParse : ReadOnlySpan<char> * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), provider As IFormatProvider, styles As DateTimeStyles, ByRef result As DateTime) As Boolean

Paraméterek

s
ReadOnlySpan<Char>

Az átalakítandó dátumot és időt képviselő karaktereket tartalmazó span.

provider
IFormatProvider

Egy objektum, amely a kultúraspecifikus formázási sinformációkat tartalmazza.

styles
DateTimeStyles

Az enumerálási értékek bitenkénti kombinációja, amely meghatározza az elemezt dátum értelmezését az aktuális időzónához vagy az aktuális dátumhoz képest. Egy jellemzően megadható érték a következő None: .

result
DateTime

Ha ez a metódus visszaadja, a DateTime dátummal és idővel segyenértékű értéket tartalmazza, ha az átalakítás sikeres volt, vagy a DateTime.MinValue értéket, ha az átalakítás sikertelen volt. Az átalakítás meghiúsul, ha a s paraméter nullüres sztring (""), vagy nem tartalmaz dátum és idő érvényes sztring-ábrázolását. Ez a paraméter nem inicializálva lesz átadva.

Válaszok

trueha a s paraméter konvertálása sikeresen megtörtént; ellenkező esetben. false

A következőre érvényes: