TimeSpan.ToString Method

Definition

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente.Converts the value of the current TimeSpan object to its equivalent string representation.

Overloads

ToString(String, IFormatProvider)

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente usando il formato specificato e le informazioni di formattazione specifiche delle impostazioni cultura.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)

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente usando il formato specificato.Converts the value of the current TimeSpan object to its equivalent string representation by using the specified format.

ToString()

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente.Converts the value of the current TimeSpan object to its equivalent string representation.

ToString(String, IFormatProvider)

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente usando il formato specificato e le informazioni di formattazione specifiche delle impostazioni cultura.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);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, formatProvider As IFormatProvider) As String

Parameters

format
String

Stringa di formato TimeSpan standard o personalizzato.A standard or custom TimeSpan format string.

formatProvider
IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura.An object that supplies culture-specific formatting information.

Returns

String

Rappresentazione di stringa del valore corrente di TimeSpan, come specificato da format e formatProvider.The string representation of the current TimeSpan value, as specified by format and formatProvider.

Implements

Exceptions

Il parametro format non è riconosciuto o non è supportato.The format parameter is not recognized or is not supported.

Examples

Nell'esempio seguente viene chiamato il metodo ToString(String, IFormatProvider) per formattare due intervalli di tempo.The following example calls the ToString(String, IFormatProvider) method to format two time intervals. Nell'esempio viene chiamato il metodo due volte per ogni stringa di formato, prima per visualizzarlo utilizzando le convenzioni delle impostazioni cultura en-US e quindi per visualizzarlo utilizzando le convenzioni delle impostazioni cultura 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

Remarks

Il parametro format può essere qualsiasi identificatore di formato standard o personalizzato valido per i valori TimeSpan.The format parameter can be any valid standard or custom format specifier for TimeSpan values. Se format è uguale a String.Empty o è null, il valore restituito dell'oggetto TimeSpan corrente viene formattato con l'identificatore di formato comune ("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"). Se format è qualsiasi altro valore, il metodo genera un'FormatException.If format is any other value, the method throws a FormatException.

Important

Le stringhe di formato personalizzate per i valori TimeSpan non includono un separatore di data o ora.The custom format strings for TimeSpan values do not include a date or time separator. Se si desidera includere questi elementi nella stringa di formato, è necessario considerarli come valori letterali carattere.If you want to include these elements in your format string, you must treat them as character literals. Vedere l'esempio per un'illustrazione e vedere l'argomento stringhe di formato TimeSpan personalizzate per altre informazioni.See the example for an illustration, and see the Custom TimeSpan Format Strings topic for more information.

Il .NET Framework fornisce un supporto completo per la formattazione, descritto più dettagliatamente negli argomenti seguenti sulla formattazione:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

Il parametro formatProvider è un'implementazione di IFormatProvider che fornisce informazioni specifiche delle impostazioni cultura relative al formato della stringa restituita.The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string. Il formatProvider parametro può essere uno dei seguenti:The formatProvider parameter can be any of the following:

Se formatProvider è null, viene utilizzato l'oggetto DateTimeFormatInfo associato alle impostazioni cultura correnti.If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used. Se format è una stringa di formato personalizzata, il parametro formatProvider viene ignorato.If format is a custom format string, the formatProvider parameter is ignored.

See also

ToString(String)

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente usando il formato specificato.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);
override this.ToString : string -> string
Public Function ToString (format As String) As String

Parameters

format
String

Stringa di formato TimeSpan standard o personalizzato.A standard or custom TimeSpan format string.

Returns

String

Rappresentazione di stringa del valore TimeSpan corrente nel formato specificato dal parametro format.The string representation of the current TimeSpan value in the format specified by the format parameter.

Exceptions

Il parametro format non è riconosciuto o non è supportato.The format parameter is not recognized or is not supported.

Examples

Nell'esempio seguente vengono usate stringhe di formato TimeSpan standard e personalizzate per visualizzare la rappresentazione di stringa di ogni elemento in una matrice di valori 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.

Remarks

Il parametro format può essere qualsiasi identificatore di formato standard o personalizzato valido per i valori TimeSpan.The format parameter can be any valid standard or custom format specifier for TimeSpan values. Se format è uguale a String.Empty o è null, il valore restituito dell'oggetto TimeSpan corrente viene formattato con l'identificatore di formato comune ("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"). Se format è qualsiasi altro valore, il metodo genera un'FormatException.If format is any other value, the method throws a FormatException.

Se format è una stringa di formato standard, il formato della stringa restituita viene definito dalle convenzioni di formattazione delle impostazioni cultura correnti.If format is a standard format string, the format of the returned string is defined by the formatting conventions of the current culture.

Important

Le stringhe di formato personalizzate per i valori TimeSpan non includono un separatore di data o ora.The custom format strings for TimeSpan values do not include a date or time separator. Se si desidera includere questi elementi nella stringa di formato, è necessario considerarli come valori letterali carattere.If you want to include these elements in your format string, you must treat them as character literals. Vedere l'esempio per un'illustrazione e vedere l'argomento stringhe di formato TimeSpan personalizzate per altre informazioni.See the example for an illustration, and see the Custom TimeSpan Format Strings topic for more information.

Il .NET Framework fornisce un supporto completo per la formattazione, descritto più dettagliatamente negli argomenti seguenti sulla formattazione:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

See also

ToString()

Converte il valore dell'oggetto TimeSpan corrente nella rappresentazione di stringa equivalente.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

Returns

String

Rappresentazione di stringa del valore TimeSpan corrente.The string representation of the current TimeSpan value.

Examples

Nell'esempio seguente vengono visualizzate le stringhe restituite chiamando il metodo ToString con diversi valori di TimeSpan.The following example displays the strings returned by calling the ToString method with a number of TimeSpan values. Si noti che anche se l'esempio non chiama direttamente il metodo ToString, viene chiamato dal metodo Console.WriteLine quando tenta di convertire un valore TimeSpan nella relativa rappresentazione di stringa.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

Remarks

La stringa restituita è formattata con l'identificatore di formato "c" e ha il formato seguente: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]

Gli elementi racchiusi tra parentesi quadre ([e]) non possono essere inclusi nella stringa restituita.Elements in square brackets ([ and ]) may not be included in the returned string. I due punti e i punti (: e.) sono caratteri letterali.Colons and periods (: and.) are literal characters. Gli elementi non letterali sono elencati nella tabella seguente.The non-literal elements are listed in the following table. Si noti che la stringa restituita dal metodo ToString() non è dipendente dalle impostazioni cultura.Note that the string returned by the ToString() method is not culture-sensitive.

ElementoItem DescrizioneDescription
"-""-" Segno meno, che indica un intervallo di tempo negativo.A minus sign, which indicates a negative time interval. Nessun segno è incluso per un intervallo di tempo positivo.No sign is included for a positive time span.
"d""d" Numero di giorni nell'intervallo di tempo.The number of days in the time interval. Questo elemento viene omesso se l'intervallo di tempo è inferiore a un giorno.This element is omitted if the time interval is less than one day.
"HH""hh" Numero di ore nell'intervallo di tempo compreso tra 0 e 23.The number of hours in the time interval, ranging from 0 to 23.
"mm""mm" Numero di minuti nell'intervallo di tempo compreso tra 0 e 59.The number of minutes in the time interval, ranging from 0 to 59.
"SS""ss" Numero di secondi nell'intervallo di tempo compreso tra 0 e 59.The number of seconds in the time interval, ranging from 0 to 59.
"fffffff""fffffff" Secondi frazionari nell'intervallo di tempo.Fractional seconds in the time interval. Questo elemento viene omesso se l'intervallo di tempo non include i secondi frazionari.This element is omitted if the time interval does not include fractional seconds. Se presente, i secondi frazionari vengono espressi sempre usando sette cifre decimali.If present, fractional seconds are always expressed using seven decimal digits.

Note

Per ulteriori informazioni sul confronto tra la rappresentazione di stringa dei tipi di dati TimeSpan e Oracle, vedere l'articolo della Knowledge base 324577: System. TimeSpan non corrisponde al tipo di dati del giorno di intervallo di Oracle 9i.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.

Notes to Callers

Il supporto per la formattazione dei valori TimeSpan è stato aggiunto nella .NET Framework 4.NET Framework 4.Support for formatting TimeSpan values was added in the .NET Framework 4.NET Framework 4. Tuttavia, l'overload del metodo ToString() rimane indipendente dalle impostazioni cultura.However, the ToString() method overload remains culture-insensitive. Il suo comportamento rimane invariato rispetto alle versioni precedenti del .NET Framework.Its behavior remains unchanged from previous versions of the .NET Framework. Per controllare la formattazione di un valore TimeSpan, chiamare l'overload ToString(String) o ToString(String, IFormatProvider).To control the formatting of a TimeSpan value, call the ToString(String) or ToString(String, IFormatProvider) overload.

See also

Applies to