System.TimeSpan.TryParse metódusok

Megjegyzés:

Ez a cikk kiegészítő megjegyzéseket tartalmaz az API referenciadokumentációjához.

TryParse(System.String,System.TimeSpan@) metódus

A TimeSpan.TryParse(String, TimeSpan) metódus a metódushoz hasonló TimeSpan.Parse(String) , azzal a kivétellel, hogy az átalakítás meghiúsulása esetén nem ad kivételt.

A s paraméter egy időintervallum-specifikációt tartalmaz az űrlapon:

[ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]

A szögletes zárójelek ([ és ]) elemei nem kötelezőek. A kapcsos zárójelek ({ és }) közé zárt és függőleges sávokkal (|) elválasztott alternatívák listájából egy kijelölés szükséges. Az alábbi táblázat az egyes elemeket ismerteti.

Elem Leírás
Ws Nem kötelező üres terület.
- Nem kötelező mínuszjel, amely negatív TimeSpanértéket jelez.
d 0 és 10675199 közötti napok.
. Kultúraérzékeny szimbólum, amely elválasztja a napokat az óráktól. Az invariáns formátum egy pont (".") karaktert használ.
Hh 0-tól 23-ig terjedő órák.
: A kultúraérzékeny időelválasztó szimbólum. Az invariáns formátum kettőspont (":") karaktert használ.
Mm Percek, 0 és 59 között.
Ss Nem kötelező másodperc, 0 és 59 között.
. Kultúraérzékeny szimbólum, amely másodperceket választ el a másodperc törtrészeitől. Az invariáns formátum egy pont (".") karaktert használ.
Ff Nem kötelező tört másodperc, amely egy-hét tizedesjegyből áll.

Az s összetevőknek együttesen meg kell határozniuk egy olyan időintervallumot, amely legalább TimeSpan.MinValue és legfeljebb TimeSpan.MaxValue.

A Parse(String) metódus megpróbálja a s-et elemezni az aktuális kultúra kultúraspecifikus formátumainak felhasználásával.

TryParse(String, IFormatProvider, TimeSpan) módszer

A TryParse(String, IFormatProvider, TimeSpan) metódus a metódushoz hasonló Parse(String, IFormatProvider) , azzal a kivétellel, hogy az átalakítás meghiúsulása esetén nem ad kivételt.

A input paraméter egy időintervallum-specifikációt tartalmaz az űrlapon:

[ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]

A szögletes zárójelek ([ és ]) elemei nem kötelezőek. A kapcsos zárójelek ({ és }) közé zárt és függőleges sávokkal (|) elválasztott alternatívák listájából egy kijelölés szükséges. Az alábbi táblázat az egyes elemeket ismerteti.

Elem Leírás
Ws Nem kötelező üres terület.
- Nem kötelező mínuszjel, amely negatív TimeSpanértéket jelez.
d 0 és 10675199 közötti napok.
. Kultúraérzékeny szimbólum, amely elválasztja a napokat az óráktól. Az invariáns formátum egy pont (".") karaktert használ.
Hh 0-tól 23-ig terjedő órák.
: A kultúraérzékeny időelválasztó szimbólum. Az invariáns formátum kettőspont (":") karaktert használ.
Mm Percek, 0 és 59 között.
Ss Nem kötelező másodperc, 0 és 59 között.
. Kultúraérzékeny szimbólum, amely másodperceket választ el a másodperc törtrészeitől. Az invariáns formátum egy pont (".") karaktert használ.
Ff Nem kötelező tört másodperc, amely egy-hét tizedesjegyből áll.

Az input összetevőknek együttesen egy olyan időintervallumot kell megadniuk, amely nagyobb vagy egyenlő TimeSpan.MinValue és kisebb vagy egyenlő TimeSpan.MaxValue.

A TryParse(String, IFormatProvider, TimeSpan) metódus megpróbálja elemezni input a formatProvider által meghatározott kultúra kultúraspecifikus formátumainak használatával.

A formatProvider paraméter egy IFormatProvider implementáció, amely kultúraspecifikus információkat nyújt a visszaadott sztring formátumáról. A formatProvider paraméter az alábbiak bármelyike lehet:

Ha formatProvider igen null, akkor a rendszer az DateTimeFormatInfo aktuális kultúrához társított objektumot használja.

Jegyzetek a hívóknak

Bizonyos esetekben, ha az elemezni kívánt sztring egy időintervallum-összetevője hétnél több számjegyet tartalmaz, a .NET-keretrendszer 3.5-ös és korábbi verzióiban sikeres és visszaadott true elemzési műveletek meghiúsulhatnak, és a .NET-keretrendszer 4- és újabb verzióiban térhetnek vissza false . Az alábbi példa a következő forgatókönyvet szemlélteti:

string value = "000000006";
TimeSpan interval;
if (TimeSpan.TryParse(value, out interval))
   Console.WriteLine($"{value} --> {interval}");
else
   Console.WriteLine($"Unable to parse '{value}'");
   
// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
// Output from .NET Framework 4:
//       Unable to parse //000000006//
let value = "000000006"
match TimeSpan.TryParse value with
| true, interval ->
    printfn $"{value} --> {interval}"
| _ ->
    printfn $"Unable to parse '{value}'"
    
// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
// Output from .NET Framework 4:
//       Unable to parse //000000006//
Dim value As String = "000000006"
Dim interval As TimeSpan
If TimeSpan.TryParse(value, interval) Then
   Console.WriteLine("{0} --> {1}", value, interval)
Else
   Console.WriteLine("Unable to parse '{0}'", value)
End If
' Output from .NET Framework 3.5 and earlier versions:
'       000000006 --> 6.00:00:00
' Output from .NET Framework 4:
'       Unable to parse '000000006'