TimeSpan.ToString Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Converte o valor do atual objeto TimeSpan na representação de cadeia de caracteres equivalente.
Sobrecargas
ToString() |
Converte o valor do atual objeto TimeSpan na representação de cadeia de caracteres equivalente. |
ToString(String) |
Converte o valor do objeto TimeSpan atual para sua representação de cadeia de caracteres equivalente usando o formato especificado. |
ToString(String, IFormatProvider) |
Converte o valor do objeto TimeSpan atual na representação de cadeia de caracteres equivalente usando o formato especificado e as informações de formatação específicas da cultura. |
ToString()
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
Converte o valor do atual objeto TimeSpan na representação de cadeia de caracteres equivalente.
public:
override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Retornos
Uma representação de cadeia de caracteres do valor TimeSpan atual.
Exemplos
O exemplo a seguir exibe as cadeias de caracteres retornadas chamando o ToString método com vários TimeSpan valores. Observe que, embora o exemplo não chame o ToString método diretamente, ele é chamado pelo Console.WriteLine método quando tenta converter um TimeSpan valor em sua representação de cadeia de caracteres.
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);
// Initialize 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);
// Initialize a time span to 3 hours.
span = new TimeSpan(3, 0, 0);
Console.WriteLine(span);
// Initialize 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
// Initialize a time span to zero.
let span = TimeSpan.Zero
printfn $"{span}"
// Initialize a time span to 14 days.
let span = TimeSpan(-14, 0, 0, 0, 0)
printfn $"{span}"
// Initialize a time span to 1:02:03.
let span = TimeSpan(1, 2, 3)
printfn $"{span}"
// Initialize a time span to 250 milliseconds.
let span = TimeSpan(0, 0, 0, 0, 250)
printfn $"{span}"
// Initialize a time span to 99 days, 23 hours, 59 minutes, and 59.999 seconds.
let span = TimeSpan(99, 23, 59, 59, 999)
printfn $"{span}"
// Initialize a time span to 3 hours.
let span = TimeSpan(3, 0, 0)
printfn $"{span}"
// Initialize a timespan to 25 milliseconds.
let span = TimeSpan(0, 0, 0, 0, 25)
printfn $"{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)
' Initialize 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)
' Initialize a time span to 3 hours.
span = New TimeSpan(3, 0, 0)
Console.WriteLine(span)
' Initialize 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
Comentários
A cadeia de caracteres retornada é formatada com o especificador de formato "c" e tem o seguinte formato:
[-][d.]hh:mm:ss[.fffffff]
Elementos entre colchetes ([ e ]) podem não ser incluídos na cadeia de caracteres retornada. Dois-pontos e períodos (: e.) são caracteres literais. Os elementos não literais são listados na tabela a seguir. Observe que a cadeia de caracteres retornada pelo ToString() método não diferencia a cultura.
Item | Descrição |
---|---|
"-" | Um sinal de menos, que indica um intervalo de tempo negativo. Nenhum sinal é incluído para um período de tempo positivo. |
"d" | O número de dias no intervalo de tempo. Esse elemento será omitido se o intervalo de tempo for menor que um dia. |
"hh" | O número de horas no intervalo de tempo, variando de 0 a 23. |
"mm" | O número de minutos no intervalo de tempo, variando de 0 a 59. |
"ss" | O número de segundos no intervalo de tempo, variando de 0 a 59. |
"fffffff" | Segundos fracionários no intervalo de tempo. Esse elemento será omitido se o intervalo de tempo não incluir segundos fracionários. Se presente, segundos fracionários são sempre expressos usando sete dígitos decimais. |
Notas aos Chamadores
O suporte para formatação TimeSpan de valores foi adicionado no .NET Framework 4. No entanto, a sobrecarga do ToString() método permanece sem diferenciação de cultura. Seu comportamento permanece inalterado em relação às versões anteriores do .NET Framework. Para controlar a formatação de um TimeSpan valor, chame a ToString(String) sobrecarga ou ToString(String, IFormatProvider) .
Confira também
Aplica-se a
ToString(String)
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
Converte o valor do objeto TimeSpan atual para sua representação de cadeia de caracteres equivalente usando o formato especificado.
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
Parâmetros
Retornos
A representação de cadeia de caracteres do valor TimeSpan atual no formato especificado pelo parâmetro format
.
Exceções
O parâmetro format
não é reconhecido ou não tem suporte.
Exemplos
O exemplo a seguir usa cadeias de caracteres de formato padrão e personalizado TimeSpan para exibir a representação de cadeia de caracteres de cada elemento em uma matriz de TimeSpan valores
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.
let spans =
[| TimeSpan.Zero
TimeSpan(-14, 0, 0, 0, 0)
TimeSpan(1, 2, 3)
TimeSpan(0, 0, 0, 0, 250)
TimeSpan(99, 23, 59, 59, 999)
TimeSpan(3, 0, 0)
TimeSpan(0, 0, 0, 0, 25) |]
let fmts = [| "c"; "g"; "G"; @"hh\:mm\:ss"; "%m' min.'" |]
for span in spans do
for fmt in fmts do
printfn $"{fmt}: {span.ToString fmt}"
printfn ""
// 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.
Comentários
O format
parâmetro pode ser qualquer especificador de formato padrão ou personalizado válido para TimeSpan valores. Se format
for igual a String.Empty ou for null
, o valor retornado do objeto atual TimeSpan será formatado com o especificador de formato comum ("c"). Caso format
tenha qualquer outro valor, o método lança um FormatException.
Se format
for uma cadeia de caracteres de formato padrão, o formato da cadeia de caracteres retornada será definido pelas convenções de formatação da cultura atual.
Importante
As cadeias de caracteres de formato personalizado para TimeSpan valores não incluem um separador de data ou hora. Se você quiser incluir esses elementos na cadeia de caracteres de formato, deverá tratá-los como literais de caracteres. Consulte o exemplo de uma ilustração e consulte o tópico Cadeias de caracteres de formato TimeSpan personalizado para obter mais informações.
O .NET fornece amplo suporte à formatação, que é descrito com mais detalhes nos seguintes tópicos de formatação:
Para obter mais informações sobre cadeias de caracteres de formato para TimeSpan valores, consulte Cadeias de caracteres de formato TimeSpan padrão e Cadeias de caracteres de formato TimeSpan personalizadas.
Para obter mais informações sobre o suporte para formatação no .NET, consulte Tipos de formatação.
Confira também
- Cadeias de caracteres de formato TimeSpan padrão
- Cadeias de caracteres de formato TimeSpan personalizado
Aplica-se a
ToString(String, IFormatProvider)
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
- Origem:
- TimeSpan.cs
Converte o valor do objeto TimeSpan atual na representação de cadeia de caracteres equivalente usando o formato especificado e as informações de formatação específicas da cultura.
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
Parâmetros
- formatProvider
- IFormatProvider
Um objeto que fornece informações de formatação específicas da cultura.
Retornos
Uma representação de cadeia de caracteres do valor TimeSpan atual, conforme especificado por format
e formatProvider
.
Implementações
Exceções
O parâmetro format
não é reconhecido ou não tem suporte.
Exemplos
O exemplo a seguir chama o ToString(String, IFormatProvider) método para formatar dois intervalos de tempo. O exemplo chama o método duas vezes para cada cadeia de caracteres de formato, primeiro para exibi-lo usando as convenções da cultura en-US e, em seguida, exibi-lo usando as convenções da cultura fr-FR.
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
open System
open System.Globalization
let intervals =
[| TimeSpan(38, 30, 15)
TimeSpan(16, 14, 30) |]
let cultures =
[| CultureInfo "en-US"
CultureInfo "fr-FR" |]
let formats = [| "c"; "g"; "G"; @"hh\:mm\:ss" |]
printfn $"""{"Interval",12} Format {cultures[0].Name,22} {cultures[1].Name,22}\n"""
for interval in intervals do
for fmt in formats do
printfn $"{interval,12} {fmt,10} {interval.ToString(fmt, cultures[0]),22} {interval.ToString(fmt, cultures[1]),22}"
printfn ""
// 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
Comentários
O format
parâmetro pode ser qualquer especificador de formato padrão ou personalizado válido para TimeSpan valores. Se format
for igual a String.Empty ou for null
, o valor retornado do objeto atual TimeSpan será formatado com o especificador de formato comum ("c"). Se format for qualquer outro valor, o método lançará um FormatException.
Importante
As cadeias de caracteres de formato personalizado para TimeSpan valores não incluem um separador de data ou hora. Se você quiser incluir esses elementos na cadeia de caracteres de formato, deverá tratá-los como literais de caracteres. Consulte o exemplo de uma ilustração e consulte o tópico Cadeias de caracteres de formato TimeSpan personalizado para obter mais informações.
O .NET fornece amplo suporte à formatação, que é descrito com mais detalhes nos seguintes tópicos de formatação:
Para obter mais informações sobre cadeias de caracteres de formato para TimeSpan valores, consulte Cadeias de caracteres de formato TimeSpan padrão e Cadeias de caracteres de formato TimeSpan personalizadas.
Para obter mais informações sobre o suporte para formatação no .NET, consulte Tipos de formatação.
O formatProvider
parâmetro é uma implementação IFormatProvider que fornece informações específicas da cultura sobre o formato da cadeia de caracteres retornada. O parâmetro formatProvider
pode ser um dos seguintes:
Um objeto CultureInfo que representa a cultura cujas convenções de formatação devem ser refletidas na cadeia de caracteres retornada. O objeto DateTimeFormatInfo retornado pela propriedade CultureInfo.DateTimeFormat define a formatação da cadeia de caracteres retornada.
Um objeto DateTimeFormatInfo que define a formatação da cadeia de caracteres retornada.
Um objeto personalizado que implementa a interface IFormatProvider. O método IFormatProvider.GetFormat retorna um objeto DateTimeFormatInfo que fornece informações de formatação.
Caso formatProvider
seja null
, o objeto DateTimeFormatInfo que está associado à cultura atual é usado. Se format
for uma cadeia de caracteres de formato personalizado, o formatProvider
parâmetro será ignorado.
Confira também
- Cadeias de caracteres de formato TimeSpan padrão
- Cadeias de caracteres de formato TimeSpan personalizado