Metody System.TimeSpan.TryParse
Tento článek obsahuje doplňující poznámky k referenční dokumentaci pro toto rozhraní API.
Metoda TryParse(System.String,System.TimeSpan@)
Metoda TimeSpan.TryParse(String, TimeSpan) je podobná TimeSpan.Parse(String) metodě, s tím rozdílem, že nevyvolá výjimku, pokud převod selže.
Parametr s
obsahuje specifikaci časového intervalu ve formuláři:
[ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]
Prvky v hranatých závorkách ([ a ]) jsou volitelné. Vyžaduje se jeden výběr ze seznamu alternativ uzavřených ve složených závorkách ({ a }) a oddělených svislými pruhy (|). Následující tabulka popisuje jednotlivé prvky.
Element (Prvek) | Popis |
---|---|
Ws | Volitelné prázdné místo. |
- | Volitelné znaménko minus, které označuje zápornou TimeSpan. |
d | Dny, od 0 do 10675199. |
. | Symbol závislý na jazykové verzi, který odděluje dny od hodin. Neutrální formát používá znak tečky ("."). |
hh | Hodiny, od 0 do 23. |
: | Symbol oddělovače času zohledňující jazykovou verzi. Invariantní formát používá dvojtečku (":"). |
mm | Minuty, od 0 do 59. |
ss | Volitelné sekundy, od 0 do 59. |
. | Symbol závislý na jazykové verzi, který odděluje sekundy od zlomků sekund. Neutrální formát používá znak tečky ("."). |
ff | Volitelné sekundy ve zlomcích, obsahující jednu až sedm desítkových číslic. |
Součásti s
musí souhrnně určovat časový interval, který je větší než nebo roven TimeSpan.MinValue a menší nebo roven TimeSpan.MaxValue.
Metoda Parse(String) se pokusí analyzovat s
pomocí jednotlivých formátů specifických pro jazykovou verzi pro aktuální jazykovou verzi.
TryParse(String, IFormatProvider, TimeSpan) Metoda
Metoda TryParse(String, IFormatProvider, TimeSpan) je podobná Parse(String, IFormatProvider) metodě, s tím rozdílem, že nevyvolá výjimku, pokud převod selže.
Parametr input
obsahuje specifikaci časového intervalu ve formuláři:
[ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]
Prvky v hranatých závorkách ([ a ]) jsou volitelné. Vyžaduje se jeden výběr ze seznamu alternativ uzavřených ve složených závorkách ({ a }) a oddělených svislými pruhy (|). Následující tabulka popisuje jednotlivé prvky.
Element (Prvek) | Popis |
---|---|
Ws | Volitelné prázdné místo. |
- | Volitelné znaménko minus, které označuje zápornou TimeSpan. |
d | Dny, od 0 do 10675199. |
. | Symbol závislý na jazykové verzi, který odděluje dny od hodin. Neutrální formát používá znak tečky ("."). |
hh | Hodiny, od 0 do 23. |
: | Symbol oddělovače času zohledňující jazykovou verzi. Invariantní formát používá dvojtečku (":"). |
mm | Minuty, od 0 do 59. |
ss | Volitelné sekundy, od 0 do 59. |
. | Symbol závislý na jazykové verzi, který odděluje sekundy od zlomků sekund. Neutrální formát používá znak tečky ("."). |
ff | Volitelné sekundy ve zlomcích, obsahující jednu až sedm desítkových číslic. |
Součásti input
musí souhrnně určovat časový interval, který je větší nebo roven TimeSpan.MinValue nebo menší než nebo rovno TimeSpan.MaxValue.
Metoda TryParse(String, IFormatProvider, TimeSpan) se pokusí parsovat input
pomocí každého z formátů specifických pro jazykovou verzi pro jazykovou verzi určenou jazykovou formatProvider
verzí .
Parametr formatProvider
je IFormatProvider implementace, která poskytuje informace specifické pro jazykovou verzi o formátu vráceného řetězce. Parametr formatProvider
může být některý z následujících:
- Objekt CultureInfo , který představuje jazykovou verzi, jejíž konvence formátování se mají promítnout do vráceného řetězce. Objekt DateTimeFormatInfo vrácený CultureInfo.DateTimeFormat vlastností definuje formátování vráceného řetězce.
- Objekt DateTimeFormatInfo , který definuje formátování vráceného řetězce.
- Vlastní objekt, který implementuje IFormatProvider rozhraní. Jeho IFormatProvider.GetFormat metoda vrátí DateTimeFormatInfo objekt, který poskytuje informace o formátování.
Pokud formatProvider
ano null
, DateTimeFormatInfo použije se objekt přidružený k aktuální jazykové verzi.
Poznámky volajícím
V některých případech, kdy součást časového intervalu v řetězci, která se má analyzovat, obsahuje více než sedm číslic, parsování operací, které proběhly úspěšně a vráceny true
v rozhraní .NET Framework 3.5 a starších verzích, může selhat a vrátit false
v rozhraní .NET Framework 4 a novějších verzích. Následující příklad ukazuje tento scénář:
string value = "000000006";
TimeSpan interval;
if (TimeSpan.TryParse(value, out interval))
Console.WriteLine("{0} --> {1}", value, interval);
else
Console.WriteLine("Unable to parse '{0}'", 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'