TimeSpan.TryParse Metoda

Definicja

Konwertuje określoną reprezentację ciągu przedziału czasu na równoważną TimeSpan i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

Przeciążenia

TryParse(String, TimeSpan)

Konwertuje reprezentację ciągu interwału czasu na jego TimeSpan równoważne i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan)

Konwertuje reprezentację przedziału czasu na równoważną TimeSpan przy użyciu określonych informacji formatowania specyficznych dla kultury i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

TryParse(ReadOnlySpan<Char>, TimeSpan)

Konwertuje reprezentację przedziału czasu na równoważną TimeSpan i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

TryParse(String, IFormatProvider, TimeSpan)

Konwertuje reprezentację ciągu interwału czasu na równoważną TimeSpan przy użyciu określonych informacji formatowania specyficznych dla kultury i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

TryParse(String, TimeSpan)

Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs

Konwertuje reprezentację ciągu interwału czasu na jego TimeSpan równoważne i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

C#
public static bool TryParse(string s, out TimeSpan result);
C#
public static bool TryParse(string? s, out TimeSpan result);

Parametry

s
String

Ciąg określający interwał czasu, który ma być konwertowany.

result
TimeSpan

Gdy ta metoda zwraca, zawiera obiekt reprezentujący interwał czasu określony przez slub Zero, jeśli konwersja nie powiodła się. Ten parametr jest przekazywany niezainicjowany.

Zwraca

true, jeśli s została pomyślnie przekonwertowana; w przeciwnym razie false. Ta operacja zwraca false, jeśli parametr s jest null lub Empty, ma nieprawidłowy format, reprezentuje interwał czasu krótszy niż TimeSpan.MinValue lub większy niż TimeSpan.MaxValuelub ma co najmniej jeden dzień, godziny, minuty lub sekundy składnik poza prawidłowym zakresem.

Przykłady

W poniższym przykładzie użyto metody TryParse, aby utworzyć obiekty TimeSpan z prawidłowych ciągów TimeSpan i wskazać, kiedy operacja analizy nie powiodła się, ponieważ ciąg przedziału czasu jest nieprawidłowy.

C#
using System;

public class TryParse
{
   private static void ParseTimeSpan(string intervalStr)
   {
      // Write the first part of the output line.
      Console.Write( "{0,20}   ", intervalStr );

      // Parse the parameter, and then convert it back to a string.
      TimeSpan intervalVal; 
      if (TimeSpan.TryParse(intervalStr, out intervalVal)) 
      {
         string intervalToStr = intervalVal.ToString();
  
         // Pad the end of the TimeSpan string with spaces if it 
         // does not contain milliseconds.
         int pIndex = intervalToStr.IndexOf(':');
         pIndex = intervalToStr.IndexOf('.', pIndex);
         if (pIndex < 0)
            intervalToStr += "        ";
   
         Console.WriteLine("{0,21}", intervalToStr);
         // Handle failure of TryParse method.
      }
      else
      {
         Console.WriteLine("Parse operation failed.");
      }
   } 
   
   public static void Main()
   {
        Console.WriteLine( "{0,20}   {1,21}", 
            "String to Parse", "TimeSpan" );    
        Console.WriteLine( "{0,20}   {1,21}", 
            "---------------", "---------------------" );    

        ParseTimeSpan("0");
        ParseTimeSpan("14");
        ParseTimeSpan("1:2:3");
        ParseTimeSpan("0:0:0.250");
        ParseTimeSpan("10.20:30:40.50");
        ParseTimeSpan("99.23:59:59.9999999");
        ParseTimeSpan("0023:0059:0059.0099");
        ParseTimeSpan("23:0:0");
        ParseTimeSpan("24:0:0");
        ParseTimeSpan("0:59:0");
        ParseTimeSpan("0:60:0");
        ParseTimeSpan("0:0:59");
        ParseTimeSpan("0:0:60");
        ParseTimeSpan("10:");
        ParseTimeSpan("10:0");
        ParseTimeSpan(":10");
        ParseTimeSpan("0:10");
        ParseTimeSpan("10:20:");
        ParseTimeSpan("10:20:0");
        ParseTimeSpan(".123");
        ParseTimeSpan("0.12:00");
        ParseTimeSpan("10.");
        ParseTimeSpan("10.12");
        ParseTimeSpan("10.12:00");
   }
}
//            String to Parse                TimeSpan
//            ---------------   ---------------------
//                          0        00:00:00
//                         14     14.00:00:00
//                      1:2:3        01:02:03
//                  0:0:0.250        00:00:00.2500000
//             10.20:30:40.50     10.20:30:40.5000000
//        99.23:59:59.9999999     99.23:59:59.9999999
//        0023:0059:0059.0099        23:59:59.0099000
//                     23:0:0        23:00:00
//                     24:0:0   Parse operation failed.
//                     0:59:0        00:59:00
//                     0:60:0   Parse operation failed.
//                     0:0:59        00:00:59
//                     0:0:60   Parse operation failed.
//                        10:   Parse operation failed.
//                       10:0        10:00:00
//                        :10   Parse operation failed.
//                       0:10        00:10:00
//                     10:20:   Parse operation failed.
//                    10:20:0        10:20:00
//                       .123   Parse operation failed.
//                    0.12:00        12:00:00
//                        10.   Parse operation failed.
//                      10.12   Parse operation failed.
//                   10.12:00     10.12:00:00

Uwagi

Aby uzyskać więcej informacji na temat tego interfejsu API, zobacz uwagi dotyczące interfejsu API uzupełniającego dla elementu TimeSpan.TryParse.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan)

Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs

Konwertuje reprezentację przedziału czasu na równoważną TimeSpan przy użyciu określonych informacji formatowania specyficznych dla kultury i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

C#
public static bool TryParse(ReadOnlySpan<char> input, IFormatProvider? formatProvider, out TimeSpan result);
C#
public static bool TryParse(ReadOnlySpan<char> input, IFormatProvider formatProvider, out TimeSpan result);

Parametry

input
ReadOnlySpan<Char>

Zakres zawierający znaki reprezentujące interwał czasu do konwersji.

formatProvider
IFormatProvider

Obiekt, który dostarcza informacje o formatowaniu specyficznym dla kultury.

result
TimeSpan

Gdy ta metoda zwraca, zawiera obiekt reprezentujący interwał czasu określony przez inputlub Zero, jeśli konwersja nie powiodła się. Ten parametr jest przekazywany niezainicjowany.

Zwraca

true, jeśli input została pomyślnie przekonwertowana; w przeciwnym razie false. Ta operacja zwraca false, jeśli parametr input jest null lub Empty, ma nieprawidłowy format, reprezentuje interwał czasu krótszy niż TimeSpan.MinValue lub większy niż TimeSpan.MaxValuelub ma co najmniej jeden dzień, godziny, minuty lub sekundy składnik poza prawidłowym zakresem.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1

TryParse(ReadOnlySpan<Char>, TimeSpan)

Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs

Konwertuje reprezentację przedziału czasu na równoważną TimeSpan i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

C#
public static bool TryParse(ReadOnlySpan<char> s, out TimeSpan result);

Parametry

s
ReadOnlySpan<Char>

Zakres zawierający znaki reprezentujące interwał czasu do konwersji.

result
TimeSpan

Gdy ta metoda zwraca, zawiera obiekt reprezentujący interwał czasu określony przez slub Zero, jeśli konwersja nie powiodła się. Ten parametr jest przekazywany niezainicjowany.

Zwraca

true, jeśli s została pomyślnie przekonwertowana; w przeciwnym razie false. Ta operacja zwraca false, jeśli parametr s jest null lub Empty, ma nieprawidłowy format, reprezentuje interwał czasu krótszy niż TimeSpan.MinValue lub większy niż TimeSpan.MaxValuelub ma co najmniej jeden dzień, godziny, minuty lub sekundy składnik poza prawidłowym zakresem.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1

TryParse(String, IFormatProvider, TimeSpan)

Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs
Źródło:
TimeSpan.cs

Konwertuje reprezentację ciągu interwału czasu na równoważną TimeSpan przy użyciu określonych informacji formatowania specyficznych dla kultury i zwraca wartość wskazującą, czy konwersja zakończyła się pomyślnie.

C#
public static bool TryParse(string input, IFormatProvider formatProvider, out TimeSpan result);
C#
public static bool TryParse(string? input, IFormatProvider? formatProvider, out TimeSpan result);

Parametry

input
String

Ciąg określający interwał czasu, który ma być konwertowany.

formatProvider
IFormatProvider

Obiekt, który dostarcza informacje o formatowaniu specyficznym dla kultury.

result
TimeSpan

Gdy ta metoda zwraca, zawiera obiekt reprezentujący interwał czasu określony przez inputlub Zero, jeśli konwersja nie powiodła się. Ten parametr jest przekazywany niezainicjowany.

Zwraca

true, jeśli input została pomyślnie przekonwertowana; w przeciwnym razie false. Ta operacja zwraca false, jeśli parametr input jest null lub Empty, ma nieprawidłowy format, reprezentuje interwał czasu krótszy niż TimeSpan.MinValue lub większy niż TimeSpan.MaxValuelub ma co najmniej jeden dzień, godziny, minuty lub sekundy składnik poza prawidłowym zakresem.

Przykłady

Poniższy przykład definiuje tablicę obiektów CultureInfo i używa każdego obiektu w wywołaniach metody TryParse(String, IFormatProvider, TimeSpan) do analizowania elementów w tablicy ciągów. W przykładzie pokazano, jak konwencje określonej kultury wpływają na operację formatowania.

C#
using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] values = { "6", "6:12", "6:12:14", "6:12:14:45", 
                          "6.12:14:45", "6:12:14:45.3448", 
                          "6:12:14:45,3448", "6:34:14:45" };
      CultureInfo[] cultures = { new CultureInfo("en-US"), 
                                 new CultureInfo("ru-RU"),
                                 CultureInfo.InvariantCulture };
      
      string header = String.Format("{0,-17}", "String");
      foreach (CultureInfo culture in cultures)
         header += culture.Equals(CultureInfo.InvariantCulture) ? 
                      String.Format("{0,20}", "Invariant") :
                      String.Format("{0,20}", culture.Name);

      Console.WriteLine(header);
      Console.WriteLine();
      
      foreach (string value in values)
      {
         Console.Write("{0,-17}", value);
         foreach (CultureInfo culture in cultures)
         {
            TimeSpan interval = new TimeSpan();
            if (TimeSpan.TryParse(value, culture, out interval))
               Console.Write("{0,20}", interval.ToString("c"));
            else
               Console.Write("{0,20}", "Unable to Parse");
         }
         Console.WriteLine();                                
      }
   }
}
// The example displays the following output:
//    String                          en-US               ru-RU           Invariant
//    
//    6                          6.00:00:00          6.00:00:00          6.00:00:00
//    6:12                         06:12:00            06:12:00            06:12:00
//    6:12:14                      06:12:14            06:12:14            06:12:14
//    6:12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
//    6.12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
//    6:12:14:45.3448    6.12:14:45.3448000     Unable to Parse  6.12:14:45.3448000
//    6:12:14:45,3448       Unable to Parse  6.12:14:45.3448000     Unable to Parse
//    6:34:14:45            Unable to Parse     Unable to Parse     Unable to Parse

Uwagi

Aby uzyskać więcej informacji na temat tego interfejsu API, zobacz uwagi dotyczące interfejsu API uzupełniającego dla elementu TimeSpan.TryParse.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0