TimeSpan.ToString Метод

Определение

Преобразует значение текущего объекта TimeSpan в эквивалентное ему строковое представление.Converts the value of the current TimeSpan object to its equivalent string representation.

Перегрузки

ToString(String, IFormatProvider)

Преобразует числовое значение текущего объекта TimeSpan в эквивалентное ему строковое представление с использованием указанного формата и сведений об особенностях форматирования для данного языка и региональных параметров.Converts the value of the current TimeSpan object to its equivalent string representation by using the specified format and culture-specific formatting information.

ToString(String)

Преобразует значение текущего объекта TimeSpan в эквивалентное ему строковое представление с использованием заданного формата.Converts the value of the current TimeSpan object to its equivalent string representation by using the specified format.

ToString()

Преобразует значение текущего объекта TimeSpan в эквивалентное ему строковое представление.Converts the value of the current TimeSpan object to its equivalent string representation.

ToString(String, IFormatProvider)

Преобразует числовое значение текущего объекта TimeSpan в эквивалентное ему строковое представление с использованием указанного формата и сведений об особенностях форматирования для данного языка и региональных параметров.Converts the value of the current TimeSpan object to its equivalent string representation by using the specified format and culture-specific formatting information.

public:
 virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ formatProvider);
public string ToString (string format, IFormatProvider formatProvider);
public string? ToString (string format, IFormatProvider formatProvider);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, formatProvider As IFormatProvider) As String

Параметры

format
String

Стандартная или пользовательская строка формата TimeSpan.A standard or custom TimeSpan format string.

formatProvider
IFormatProvider

Объект, предоставляющий сведения о форматировании для определенного языка и региональных параметров.An object that supplies culture-specific formatting information.

Возвращаемое значение

String

Строковое представление текущего значения TimeSpan в виде, заданном параметрами format и formatProvider.The string representation of the current TimeSpan value, as specified by format and formatProvider.

Реализации

Исключения

Параметр format не распознается или не поддерживается.The format parameter is not recognized or is not supported.

Примеры

В следующем примере метод вызывается ToString(String, IFormatProvider) для форматирования двух временных интервалов.The following example calls the ToString(String, IFormatProvider) method to format two time intervals. В примере метод дважды вызывается для каждой строки формата, сначала для его вывода с использованием правил языка и региональных параметров en-US, а затем для его вывода с использованием соглашений языка и региональных параметров fr-FR.The example calls the method twice for each format string, first to display it using the conventions of the en-US culture and then to display it using the conventions of the fr-FR culture.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      TimeSpan[] intervals = { new TimeSpan(38, 30, 15), 
                               new TimeSpan(16, 14, 30) }; 
      CultureInfo[] cultures = { new CultureInfo("en-US"), 
                                 new CultureInfo("fr-FR") };
      string[] formats = {"c", "g", "G", @"hh\:mm\:ss" };
      Console.WriteLine("{0,12}      Format  {1,22}  {2,22}\n", 
                        "Interval", cultures[0].Name, cultures[1].Name);

      foreach (var interval in intervals) {
         foreach (var fmt in formats)
            Console.WriteLine("{0,12}  {1,10}  {2,22}  {3,22}", 
                              interval, fmt, 
                              interval.ToString(fmt, cultures[0]), 
                              interval.ToString(fmt, cultures[1]));
         Console.WriteLine();
      }  
   }
}
// The example displays the following output:
//        Interval      Format                   en-US                   fr-FR
//    
//      1.14:30:15           c              1.14:30:15              1.14:30:15
//      1.14:30:15           g              1:14:30:15              1:14:30:15
//      1.14:30:15           G      1:14:30:15.0000000      1:14:30:15,0000000
//      1.14:30:15  hh\:mm\:ss                14:30:15                14:30:15
//    
//        16:14:30           c                16:14:30                16:14:30
//        16:14:30           g                16:14:30                16:14:30
//        16:14:30           G      0:16:14:30.0000000      0:16:14:30,0000000
//        16:14:30  hh\:mm\:ss                16:14:30                16:14:30
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim intervals() As TimeSpan = { New TimeSpan(38, 30, 15), 
                                      New TimeSpan(16, 14, 30) } 
      Dim cultures() As CultureInfo = { New CultureInfo("en-US"), 
                                        New CultureInfo("fr-FR") }
      Dim formats() As String = {"c", "g", "G", "hh\:mm\:ss" }
      Console.WriteLine("{0,12}      Format  {1,22}  {2,22}", 
                        "Interval", cultures(0).Name, cultures(1).Name)
      Console.WriteLine()
      For Each interval In intervals
         For Each fmt In formats
            Console.WriteLine("{0,12}  {1,10}  {2,22}  {3,22}", 
                              interval, fmt, 
                              interval.ToString(fmt, cultures(0)), 
                              interval.ToString(fmt, cultures(1)))
         Next
         Console.WriteLine()
      Next                                                                                                                                            
   End Sub
End Module
' The example displays the following output:
'        Interval      Format                   en-US                   fr-FR
'    
'      1.14:30:15           c              1.14:30:15              1.14:30:15
'      1.14:30:15           g              1:14:30:15              1:14:30:15
'      1.14:30:15           G      1:14:30:15.0000000      1:14:30:15,0000000
'      1.14:30:15  hh\:mm\:ss                14:30:15                14:30:15
'    
'        16:14:30           c                16:14:30                16:14:30
'        16:14:30           g                16:14:30                16:14:30
'        16:14:30           G      0:16:14:30.0000000      0:16:14:30,0000000
'        16:14:30  hh\:mm\:ss                16:14:30                16:14:30

Комментарии

formatПараметр может быть любым допустимым описателем стандартного или настраиваемого формата для TimeSpan значений.The format parameter can be any valid standard or custom format specifier for TimeSpan values. Если format параметр равен String.Empty или равно null , возвращаемое значение текущего TimeSpan объекта форматируется с помощью описателя общего формата ("c").If format is equal to String.Empty or is null, the return value of the current TimeSpan object is formatted with the common format specifier ("c"). Если параметр format имеет любое другое значение, метод создает исключение FormatException .If format is any other value, the method throws a FormatException.

Важно!

Строки настраиваемого формата для TimeSpan значений не включают разделитель даты или времени.The custom format strings for TimeSpan values do not include a date or time separator. Если необходимо включить эти элементы в строку формата, необходимо рассматривать их как символьные литералы.If you want to include these elements in your format string, you must treat them as character literals. См. пример для иллюстрации и дополнительные сведения см. в разделе строки настраиваемого формата TimeSpan .See the example for an illustration, and see the Custom TimeSpan Format Strings topic for more information.

.NET Framework обеспечивает обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

formatProviderПараметр — это IFormatProvider реализация, которая предоставляет сведения о формате возвращаемой строки, зависящей от языка и региональных параметров.The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string. formatProviderПараметр может быть любым из следующих:The formatProvider parameter can be any of the following:

  • CultureInfoОбъект, представляющий язык и региональные параметры, соглашения о форматировании которых должны быть отражены в возвращаемой строке.A CultureInfo object that represents the culture whose formatting conventions are to be reflected in the returned string. DateTimeFormatInfoОбъект, возвращаемый CultureInfo.DateTimeFormat свойством, определяет форматирование возвращаемой строки.The DateTimeFormatInfo object returned by the CultureInfo.DateTimeFormat property defines the formatting of the returned string.

  • DateTimeFormatInfoОбъект, определяющий форматирование возвращаемой строки.A DateTimeFormatInfo object that defines the formatting of the returned string.

  • Пользовательский объект, реализующий IFormatProvider интерфейс.A custom object that implements the IFormatProvider interface. Его IFormatProvider.GetFormat метод возвращает DateTimeFormatInfo объект, предоставляющий сведения о форматировании.Its IFormatProvider.GetFormat method returns a DateTimeFormatInfo object that provides formatting information.

Если formatProvider имеет значение null , то DateTimeFormatInfo используется объект, связанный с текущим языком и региональными параметрами.If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used. Если format является строкой настраиваемого формата, formatProvider параметр игнорируется.If format is a custom format string, the formatProvider parameter is ignored.

См. также раздел

Применяется к

ToString(String)

Преобразует значение текущего объекта TimeSpan в эквивалентное ему строковое представление с использованием заданного формата.Converts the value of the current TimeSpan object to its equivalent string representation by using the specified format.

public:
 System::String ^ ToString(System::String ^ format);
public string ToString (string format);
public string ToString (string? format);
override this.ToString : string -> string
Public Function ToString (format As String) As String

Параметры

format
String

Стандартная или пользовательская строка формата TimeSpan.A standard or custom TimeSpan format string.

Возвращаемое значение

String

Строковое представление значения текущего объекта TimeSpan в формате, заданном параметром format.The string representation of the current TimeSpan value in the format specified by the format parameter.

Исключения

Параметр format не распознается или не поддерживается.The format parameter is not recognized or is not supported.

Примеры

В следующем примере используются стандартные и настраиваемые TimeSpan строки формата для отображения строкового представления каждого элемента в массиве значений. TimeSpanThe following example uses standard and custom TimeSpan format strings to display the string representation of each element in an array of TimeSpan values

TimeSpan[] spans = { 
   TimeSpan.Zero, 
   new TimeSpan(-14, 0, 0, 0, 0), 
   new TimeSpan(1, 2, 3), 
   new TimeSpan(0, 0, 0, 0, 250), 
   new TimeSpan(99, 23, 59, 59, 999),
   new TimeSpan(3, 0, 0), 
   new TimeSpan(0, 0, 0, 0, 25) 
};

string[] fmts = { "c", "g", "G", @"hh\:mm\:ss", "%m' min.'" };
foreach (TimeSpan span in spans)
{
   foreach (string fmt in fmts)
      Console.WriteLine("{0}: {1}", fmt, span.ToString(fmt));

   Console.WriteLine();
}
// The example displays the following output:
//       c: 00:00:00
//       g: 0:00:00
//       G: 0:00:00:00.0000000
//       hh\:mm\:ss: 00:00:00
//       %m' min.': 0 min.
//       
//       c: -14.00:00:00
//       g: -14:0:00:00
//       G: -14:00:00:00.0000000
//       hh\:mm\:ss: 00:00:00
//       %m' min.': 0 min.
//       
//       c: 01:02:03
//       g: 1:02:03
//       G: 0:01:02:03.0000000
//       hh\:mm\:ss: 01:02:03
//       %m' min.': 2 min.
//       
//       c: 00:00:00.2500000
//       g: 0:00:00.25
//       G: 0:00:00:00.2500000
//       hh\:mm\:ss: 00:00:00
//       %m' min.': 0 min.
//       
//       c: 99.23:59:59.9990000
//       g: 99:23:59:59.999
//       G: 99:23:59:59.9990000
//       hh\:mm\:ss: 23:59:59
//       %m' min.': 59 min.
//       
//       c: 03:00:00
//       g: 3:00:00
//       G: 0:03:00:00.0000000
//       hh\:mm\:ss: 03:00:00
//       %m' min.': 0 min.
//       
//       c: 00:00:00.0250000
//       g: 0:00:00.025
//       G: 0:00:00:00.0250000
//       hh\:mm\:ss: 00:00:00
//       %m' min.': 0 min.
Module Example
   Public Sub Main()
      Dim spans() As TimeSpan = { TimeSpan.Zero, New TimeSpan(-14, 0, 0, 0, 0), 
                                  New TimeSpan(1, 2, 3), 
                                  New TimeSpan(0, 0, 0, 0, 250), 
                                  New TimeSpan(99, 23, 59, 59, 999),
                                  New TimeSpan(3, 0, 0), 
                                  New TimeSpan(0, 0, 0, 0, 25) }
      Dim fmts() As String = { "c", "g", "G", "hh\:mm\:ss", "%m' min.'" }
      For Each span As TimeSpan In spans
         For Each fmt As String In fmts
            Console.WriteLine("{0}: {1}", fmt, span.ToString(fmt))
         Next
         Console.WriteLine()         
      Next
   End Sub
End Module
' The example displays the following output:
'       c: 00:00:00
'       g: 0:00:00
'       G: 0:00:00:00.0000000
'       hh\:mm\:ss: 00:00:00
'       %m' min.': 0 min.
'       
'       c: -14.00:00:00
'       g: -14:0:00:00
'       G: -14:00:00:00.0000000
'       hh\:mm\:ss: 00:00:00
'       %m' min.': 0 min.
'       
'       c: 01:02:03
'       g: 1:02:03
'       G: 0:01:02:03.0000000
'       hh\:mm\:ss: 01:02:03
'       %m' min.': 2 min.
'       
'       c: 00:00:00.2500000
'       g: 0:00:00.25
'       G: 0:00:00:00.2500000
'       hh\:mm\:ss: 00:00:00
'       %m' min.': 0 min.
'       
'       c: 99.23:59:59.9990000
'       g: 99:23:59:59.999
'       G: 99:23:59:59.9990000
'       hh\:mm\:ss: 23:59:59
'       %m' min.': 59 min.
'       
'       c: 03:00:00
'       g: 3:00:00
'       G: 0:03:00:00.0000000
'       hh\:mm\:ss: 03:00:00
'       %m' min.': 0 min.
'       
'       c: 00:00:00.0250000
'       g: 0:00:00.025
'       G: 0:00:00:00.0250000
'       hh\:mm\:ss: 00:00:00
'       %m' min.': 0 min.

Комментарии

formatПараметр может быть любым допустимым описателем стандартного или настраиваемого формата для TimeSpan значений.The format parameter can be any valid standard or custom format specifier for TimeSpan values. Если format параметр равен String.Empty или равно null , возвращаемое значение текущего TimeSpan объекта форматируется с помощью описателя общего формата ("c").If format is equal to String.Empty or is null, the return value of the current TimeSpan object is formatted with the common format specifier ("c"). Если параметр format имеет любое другое значение, метод создает исключение FormatException .If format is any other value, the method throws a FormatException.

Если format является строкой стандартного формата, формат возвращаемой строки определяется соглашениями о форматировании текущего языка и региональных параметров.If format is a standard format string, the format of the returned string is defined by the formatting conventions of the current culture.

Важно!

Строки настраиваемого формата для TimeSpan значений не включают разделитель даты или времени.The custom format strings for TimeSpan values do not include a date or time separator. Если необходимо включить эти элементы в строку формата, необходимо рассматривать их как символьные литералы.If you want to include these elements in your format string, you must treat them as character literals. См. пример для иллюстрации и дополнительные сведения см. в разделе строки настраиваемого формата TimeSpan .See the example for an illustration, and see the Custom TimeSpan Format Strings topic for more information.

.NET Framework обеспечивает обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

См. также раздел

Применяется к

ToString()

Преобразует значение текущего объекта TimeSpan в эквивалентное ему строковое представление.Converts the value of the current TimeSpan object to its equivalent string representation.

public:
 override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

Возвращаемое значение

String

Строковое представление значения текущего объекта TimeSpan.The string representation of the current TimeSpan value.

Примеры

В следующем примере выводятся строки, возвращаемые путем вызова ToString метода с несколькими TimeSpan значениями.The following example displays the strings returned by calling the ToString method with a number of TimeSpan values. Обратите внимание, что хотя в примере не вызывается ToString метод напрямую, он вызывается Console.WriteLine методом при попытке преобразовать TimeSpan значение в его строковое представление.Note that although the example does not call the ToString method directly, it is called by the Console.WriteLine method when it attempts to convert a TimeSpan value to its string representation.

 TimeSpan span;
 
 // Initialize a time span to zero.
 span = TimeSpan.Zero;
 Console.WriteLine(span);

 // Initialize a time span to 14 days.
 span = new TimeSpan(-14, 0, 0, 0, 0);
 Console.WriteLine(span);

 // Initialize a time span to 1:02:03.
 span = new TimeSpan(1, 2, 3);
 Console.WriteLine(span);

 // Initialize a time span to 250 milliseconds.
 span = new TimeSpan(0, 0, 0, 0, 250);
 Console.WriteLine(span);
 
 // Initalize a time span to 99 days, 23 hours, 59 minutes, and 59.999 seconds.
 span = new TimeSpan(99, 23, 59, 59, 999);
 Console.WriteLine(span);
 
 // Initalize a time span to 3 hours.
 span = new TimeSpan(3, 0, 0);
 Console.WriteLine(span);
 
 // Initalize a timespan to 25 milliseconds.
 span = new TimeSpan(0, 0, 0, 0, 25);
 Console.WriteLine(span);

 // The example displays the following output:
 //       00:00:00
 //       -14.00:00:00
 //       01:02:03
 //       00:00:00.2500000
 //       99.23:59:59.9990000
 //       03:00:00
 //       00:00:00.0250000
Module ToString
   Public Sub Main()
      Dim span As TimeSpan
      
      ' Initialize a time span to zero.
      span = TimeSpan.Zero
      Console.WriteLine(span)
      
      ' Initialize a time span to 14 days.
      span = New TimeSpan(-14, 0, 0, 0, 0)
      Console.WriteLine(span)
     
      ' Initialize a time span to 1:02:03.
      span = New TimeSpan(1, 2, 3)
      Console.WriteLine(span)
      
      
      ' Initialize a time span to 250 milliseconds.
      span = New TimeSpan(0, 0, 0, 0, 250)
      Console.WriteLine(span)
      
      ' Initalize a time span to 99 days, 23 hours, 59 minutes, and 59.9999999 seconds.
      span = New TimeSpan(99, 23, 59, 59, 999)
      Console.WriteLine(span)
      
      ' Initalize a time span to 3 hours.
      span = New TimeSpan(3, 0, 0)
      Console.WriteLine(span)
      
      ' Initalize a timespan to 25 milliseconds.
      span = New TimeSpan(0, 0, 0, 0, 25)
      Console.WriteLine(span)
   End Sub
End Module
' The example displays the following output:
'       00:00:00
'       -14.00:00:00
'       01:02:03
'       00:00:00.2500000
'       99.23:59:59.9990000
'       03:00:00
'       00:00:00.0250000

Комментарии

Возвращаемая строка форматируется с помощью описателя формата "c" и имеет следующий формат:The returned string is formatted with the "c" format specifier and has the following format:

[-][d.]hh:mm:ss[.fffffff][-][d.]hh:mm:ss[.fffffff]

Элементы в квадратных скобках ([и]) могут не включаться в возвращаемую строку.Elements in square brackets ([ and ]) may not be included in the returned string. Двоеточия и точки (: и) являются литеральными символами.Colons and periods (: and.) are literal characters. В следующей таблице перечислены элементы, не являющиеся литералами.The non-literal elements are listed in the following table. Обратите внимание, что строка, возвращаемая ToString() методом, не зависит от языка и региональных параметров.Note that the string returned by the ToString() method is not culture-sensitive.

ЭлементItem ОписаниеDescription
"-""-" Знак «минус», обозначающий отрицательный интервал времени.A minus sign, which indicates a negative time interval. Знак с положительным периодом времени не включается.No sign is included for a positive time span.
"d""d" Число дней в интервале времени.The number of days in the time interval. Этот элемент опускается, если интервал времени меньше одного дня.This element is omitted if the time interval is less than one day.
"HH""hh" Количество часов в интервале времени, в диапазоне от 0 до 23.The number of hours in the time interval, ranging from 0 to 23.
"mm""mm" Количество минут в интервале времени, в диапазоне от 0 до 59.The number of minutes in the time interval, ranging from 0 to 59.
«SS»"ss" Количество секунд в интервале времени, в диапазоне от 0 до 59.The number of seconds in the time interval, ranging from 0 to 59.
"fffffff""fffffff" Доли секунды в интервале времени.Fractional seconds in the time interval. Этот элемент опускается, если интервал времени не включает доли секунды.This element is omitted if the time interval does not include fractional seconds. При наличии доли секунды всегда выражаются с использованием семи десятичных цифр.If present, fractional seconds are always expressed using seven decimal digits.

Примечание

Дополнительные сведения о сравнении строкового представления TimeSpan типов данных и Oracle см. в статье базы знаний 324577: System. TimeSpan не соответствует типу данных Oracle 9i Interval.For more information about comparing the string representation of TimeSpan and Oracle data types, see Knowledge Base article 324577: System.TimeSpan Does Not Match Oracle 9i INTERVAL DAY TO SECOND Data Type.

Примечания для тех, кто вызывает этот метод

Поддержка форматирования TimeSpan значений была добавлена в .NET Framework 4.NET Framework 4 .Support for formatting TimeSpan values was added in the .NET Framework 4.NET Framework 4. Однако ToString() перегрузка метода остается без учета языка и региональных параметров.However, the ToString() method overload remains culture-insensitive. Его поведение остается неизменным по отношению к предыдущим версиям .NET Framework.Its behavior remains unchanged from previous versions of the .NET Framework. Чтобы управлять форматированием TimeSpan значения, вызовите метод ToString(String) или ToString(String, IFormatProvider) .To control the formatting of a TimeSpan value, call the ToString(String) or ToString(String, IFormatProvider) overload.

См. также раздел

Применяется к