Chaînes de format TimeSpan standard.Standard TimeSpan Format Strings

Une chaîne de format TimeSpan standard utilise un spécificateur de format pour définir la représentation textuelle d'une valeur TimeSpan qui résulte d'une opération de mise en forme.A standard TimeSpan format string uses a single format specifier to define the text representation of a TimeSpan value that results from a formatting operation. Toute chaîne de format contenant plusieurs caractères alphabétiques, y compris un espace blanc, est interprétée comme une chaîne de format TimeSpan personnalisée.Any format string that contains more than one character, including white space, is interpreted as a custom TimeSpan format string. Pour plus d’informations, consultez Chaînes de format TimeSpan personnalisées.For more information, see Custom TimeSpan Format Strings .

Les représentations sous forme de chaîne de valeurs TimeSpan sont produites par des appels aux surcharges de la méthode TimeSpan.ToString, ainsi que par les méthodes qui prennent en charge la mise en forme composite, telles que String.Format.The string representations of TimeSpan values are produced by calls to the overloads of the TimeSpan.ToString method, as well as by methods that support composite formatting, such as String.Format. Pour plus d’informations, consultez Mise en forme des types et Mise en forme composite.For more information, see Formatting Types and Composite Formatting. L'exemple suivant illustre l'utilisation de chaînes de format standard dans des opérations de mise en forme.The following example illustrates the use of standard format strings in formatting operations.

using System;

public class Example
{
   public static void Main()
   {
      TimeSpan duration = new TimeSpan(1, 12, 23, 62);
      string output = "Time of Travel: " + duration.ToString("c");
      Console.WriteLine(output);
      
      Console.WriteLine("Time of Travel: {0:c}", duration); 
   }
}
// The example displays the following output:
//       Time of Travel: 1.12:24:02
//       Time of Travel: 1.12:24:02
Module Example
   Public Sub Main()
      Dim duration As New TimeSpan(1, 12, 23, 62)
      Dim output As String = "Time of Travel: " + duration.ToString("c")
      Console.WriteLine(output)
      
      Console.WriteLine("Time of Travel: {0:c}", duration) 
   End Sub
End Module
' The example displays the following output:
'       Time of Travel: 1.12:24:02
'       Time of Travel: 1.12:24:02

Les chaînes de format TimeSpan standard sont également utilisées par les méthodes TimeSpan.ParseExact et TimeSpan.TryParseExact pour définir le format requis des chaînes d'entrée pour les opérations d'analyse.Standard TimeSpan format strings are also used by the TimeSpan.ParseExact and TimeSpan.TryParseExact methods to define the required format of input strings for parsing operations. (L’analyse convertit la représentation sous forme de chaîne d’une valeur en cette valeur.) L’exemple suivant illustre l’utilisation de chaînes de format standard dans les opérations d’analyse.(Parsing converts the string representation of a value to that value.) The following example illustrates the use of standard format strings in parsing operations.

using System;

public class Example
{
   public static void Main()
   {
      string value = "1.03:14:56.1667";
      TimeSpan interval;
      try {
         interval = TimeSpan.ParseExact(value, "c", null);
         Console.WriteLine("Converted '{0}' to {1}", value, interval);
      }   
      catch (FormatException) {
         Console.WriteLine("{0}: Bad Format", value);
      }   
      catch (OverflowException) {
         Console.WriteLine("{0}: Out of Range", value);
      }
      
      if (TimeSpan.TryParseExact(value, "c", null, out interval))
         Console.WriteLine("Converted '{0}' to {1}", value, interval);
      else
         Console.WriteLine("Unable to convert {0} to a time interval.", 
                           value);
   }
}
// The example displays the following output:
//       Converted '1.03:14:56.1667' to 1.03:14:56.1667000
//       Converted '1.03:14:56.1667' to 1.03:14:56.1667000
Module Example
   Public Sub Main()
      Dim value As String = "1.03:14:56.1667"
      Dim interval As TimeSpan
      Try
         interval = TimeSpan.ParseExact(value, "c", Nothing)
         Console.WriteLine("Converted '{0}' to {1}", value, interval)
      Catch e As FormatException
         Console.WriteLine("{0}: Bad Format", value)
      Catch e As OverflowException
         Console.WriteLine("{0}: Out of Range", value)
      End Try
      
      If TimeSpan.TryParseExact(value, "c", Nothing, interval) Then
         Console.WriteLine("Converted '{0}' to {1}", value, interval)
      Else
         Console.WriteLine("Unable to convert {0} to a time interval.", 
                           value)
      End If                
   End Sub
End Module
' The example displays the following output:
'       Converted '1.03:14:56.1667' to 1.03:14:56.1667000
'       Converted '1.03:14:56.1667' to 1.03:14:56.1667000

Le tableau suivant répertorie les spécificateurs de format d'intervalle de temps standard.The following table lists the standard time interval format specifiers.

Spécificateur de formatFormat specifier NameName DescriptionDescription ExemplesExamples
"c""c" Format constant (invariant)Constant (invariant) format Ce spécificateur ne dépend pas de la culture.This specifier is not culture-sensitive. Son format est le suivant : [-][d'.']hh':'mm':'ss['.'fffffff].It takes the form [-][d'.']hh':'mm':'ss['.'fffffff].

(les chaînes de format "t" et "T" produisent les mêmes résultats)(The "t" and "T" format strings produce the same results.)

Pour plus d’informations, consultez Spécificateur de format constant ("c").More information: The Constant ("c") Format Specifier.
TimeSpan.Zero -> 00:00:00TimeSpan.Zero -> 00:00:00

New TimeSpan(0, 0, 30, 0) -> 00:30:00New TimeSpan(0, 0, 30, 0) -> 00:30:00

New TimeSpan(3, 17, 25, 30, 500) -> 3.17:25:30.5000000New TimeSpan(3, 17, 25, 30, 500) -> 3.17:25:30.5000000
"g""g" Format court généralGeneral short format Ce spécificateur retourne uniquement ce qui est nécessaire.This specifier outputs only what is needed. Il dépend de la culture et prend la forme suivante : [-][d':']h':'mm':'ss[.FFFFFFF].It is culture-sensitive and takes the form [-][d':']h':'mm':'ss[.FFFFFFF].

Pour plus d’informations, consultez Spécificateur de format court général ("g").More information: The General Short ("g") Format Specifier.
New TimeSpan(1, 3, 16, 50, 500) -> 1:3:16:50.5 (en-US)New TimeSpan(1, 3, 16, 50, 500) -> 1:3:16:50.5 (en-US)

New TimeSpan(1, 3, 16, 50, 500) -> 1:3:16:50,5 (fr-FR)New TimeSpan(1, 3, 16, 50, 500) -> 1:3:16:50,5 (fr-FR)

New TimeSpan(1, 3, 16, 50, 599) -> 1:3:16:50.599 (en-US)New TimeSpan(1, 3, 16, 50, 599) -> 1:3:16:50.599 (en-US)

New TimeSpan(1, 3, 16, 50, 599) -> 1:3:16:50,599 (fr-FR)New TimeSpan(1, 3, 16, 50, 599) -> 1:3:16:50,599 (fr-FR)
"G""G" Format long généralGeneral long format Ce spécificateur retourne toujours les jours et sept chiffres fractionnaires.This specifier always outputs days and seven fractional digits. Il dépend de la culture et prend la forme suivante : [-]d':'hh':'mm':'ss.fffffff.It is culture-sensitive and takes the form [-]d':'hh':'mm':'ss.fffffff.

Pour plus d’informations, consultez Spécificateur de format long général ("G").More information: The General Long ("G") Format Specifier.
New TimeSpan(18, 30, 0) -> 0:18:30:00.0000000 (en-US)New TimeSpan(18, 30, 0) -> 0:18:30:00.0000000 (en-US)

New TimeSpan(18, 30, 0) -> 0:18:30:00,0000000 (fr-FR)New TimeSpan(18, 30, 0) -> 0:18:30:00,0000000 (fr-FR)

Spécificateur de format constant ("c")The Constant ("c") Format Specifier

Le spécificateur de format "c" retourne la représentation sous forme de chaîne d'une valeur TimeSpan au format suivant :The "c" format specifier returns the string representation of a TimeSpan value in the following form:

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

Les éléments entre crochets ([ et ]) sont facultatifs.Elements in square brackets ([ and ]) are optional. Le point (.) et les deux-points (:) sont des symboles littéraux.The period (.) and colon (:) are literal symbols. Le tableau suivant décrit les éléments restants.The following table describes the remaining elements.

ÉlémentElement DescriptionDescription
- Signe négatif facultatif, qui indique un intervalle de temps négatif.An optional negative sign, which indicates a negative time interval.
dd Nombre facultatif de jours, sans zéros non significatifs.The optional number of days, with no leading zeros.
hhhh Nombre d'heures, allant de "00" à "23".The number of hours, which ranges from "00" to "23".
mmmm Nombre de minutes, allant de "00" à "59".The number of minutes, which ranges from "00" to "59".
ssss Nombre de secondes, allant de "0" à "59".The number of seconds, which ranges from "0" to "59".
ffffffffffffff Partie fractionnaire facultative d'une seconde.The optional fractional portion of a second. Sa valeur peut varier de "0000001" (une graduation ou un dix-millionième de seconde) à "9999999" (9 999 999 dix-millionièmes de seconde ou une seconde moins une graduation).Its value can range from "0000001" (one tick, or one ten-millionth of a second) to "9999999" (9,999,999 ten-millionths of a second, or one second less one tick).

Contrairement aux spécificateurs de format "g" et "G", le spécificateur de format "c" ne dépend pas de la culture.Unlike the "g" and "G" format specifiers, the "c" format specifier is not culture-sensitive. Il produit la représentation sous forme de chaîne d’une valeur TimeSpan qui est invariante et commune à toutes les versions du .NET Framework antérieures à .NET Framework 4.It produces the string representation of a TimeSpan value that is invariant and that is common to all previous versions of the .NET Framework before the .NET Framework 4. "c" est la chaîne de format TimeSpan par défaut. La méthode TimeSpan.ToString() met en forme une valeur d'intervalle de temps à l'aide de la chaîne de format "c"."c" is the default TimeSpan format string; the TimeSpan.ToString() method formats a time interval value by using the "c" format string.

Notes

TimeSpan prend également en charge les chaînes de format standard "t" et "T", dont le comportement est identique à celui de la chaîne de format standard "c".TimeSpan also supports the "t" and "T" standard format strings, which are identical in behavior to the "c" standard format string.

L'exemple suivant instancie deux objets TimeSpan, les utilise pour effectuer des opérations arithmétiques, puis affiche le résultat.The following example instantiates two TimeSpan objects, uses them to perform arithmetic operations, and displays the result. Dans chaque cas, il utilise la mise en forme composite pour afficher la valeur TimeSpan à l'aide du spécificateur de format "c".In each case, it uses composite formatting to display the TimeSpan value by using the "c" format specifier.

using System;

public class Example
{
   public static void Main()
   {
      TimeSpan interval1, interval2;
      interval1 = new TimeSpan(7, 45, 16);
      interval2 = new TimeSpan(18, 12, 38);
      
      Console.WriteLine("{0:c} - {1:c} = {2:c}", interval1, 
                        interval2, interval1 - interval2);
      Console.WriteLine("{0:c} + {1:c} = {2:c}", interval1, 
                        interval2, interval1 + interval2);
      
      interval1 = new TimeSpan(0, 0, 1, 14, 365);
      interval2 = TimeSpan.FromTicks(2143756);  
      Console.WriteLine("{0:c} + {1:c} = {2:c}", interval1, 
                        interval2, interval1 + interval2);
   }
}
// The example displays the following output:
//       07:45:16 - 18:12:38 = -10:27:22
//       07:45:16 + 18:12:38 = 1.01:57:54
//       00:01:14.3650000 + 00:00:00.2143756 = 00:01:14.5793756
Module Example
   Public Sub Main()
      Dim interval1, interval2 As TimeSpan
      interval1 = New TimeSpan(7, 45, 16)
      interval2 = New TimeSpan(18, 12, 38)
      
      Console.WriteLine("{0:c} - {1:c} = {2:c}", interval1, 
                        interval2, interval1 - interval2)
      Console.WriteLine("{0:c} + {1:c} = {2:c}", interval1, 
                        interval2, interval1 + interval2)
      
      interval1 = New TimeSpan(0, 0, 1, 14, 365)
      interval2 = TimeSpan.FromTicks(2143756)      
      Console.WriteLine("{0:c} + {1:c} = {2:c}", interval1, 
                        interval2, interval1 + interval2)
   End Sub
End Module
' The example displays the following output:
'       07:45:16 - 18:12:38 = -10:27:22
'       07:45:16 + 18:12:38 = 1.01:57:54
'       00:01:14.3650000 + 00:00:00.2143756 = 00:01:14.5793756

Spécificateur de format court général ("g")The General Short ("g") Format Specifier

Le spécificateur de format "g" TimeSpan retourne la représentation sous forme de chaîne d'une valeur TimeSpan dans un format compact, en incluant uniquement les éléments qui sont nécessaires.The "g" TimeSpan format specifier returns the string representation of a TimeSpan value in a compact form by including only the elements that are necessary. Son format est le suivant :It has the following form:

[-][d:]h:mm:ss[.FFFFFFF][-][d:]h:mm:ss[.FFFFFFF]

Les éléments entre crochets ([ et ]) sont facultatifs.Elements in square brackets ([ and ]) are optional. Le signe deux-points (:) est un symbole littéral.The colon (:) is a literal symbol. Le tableau suivant décrit les éléments restants.The following table describes the remaining elements.

ÉlémentElement DescriptionDescription
- Signe négatif facultatif, qui indique un intervalle de temps négatif.An optional negative sign, which indicates a negative time interval.
dd Nombre facultatif de jours, sans zéros non significatifs.The optional number of days, with no leading zeros.
hh Nombre d'heures, allant de "0" à "23", sans zéros non significatifs.The number of hours, which ranges from "0" to "23", with no leading zeros.
mmmm Nombre de minutes, allant de "00" à "59".The number of minutes, which ranges from "00" to "59"..
ssss Nombre de secondes, allant de "00" à "59".The number of seconds, which ranges from "00" to "59"..
.. Séparateur des fractions de seconde.The fractional seconds separator. Il équivaut à la propriété NumberDecimalSeparator de la culture spécifiée, sans substitutions par l'utilisateur.It is equivalent to the specified culture's NumberDecimalSeparator property without user overrides.
FFFFFFFFFFFFFF Fractions de seconde.The fractional seconds. Le moins de chiffres possible sont affichés.As few digits as possible are displayed.

Tout comme le spécificateur de format "G", le spécificateur de format "g" est localisé.Like the "G" format specifier, the "g" format specifier is localized. Son séparateur de fraction de seconde est basé sur la propriété NumberDecimalSeparator de la culture actuelle ou de la culture spécifiée.Its fractional seconds separator is based on either the current culture or a specified culture's NumberDecimalSeparator property.

L'exemple suivant instancie deux objets TimeSpan, les utilise pour effectuer des opérations arithmétiques, puis affiche le résultat.The following example instantiates two TimeSpan objects, uses them to perform arithmetic operations, and displays the result. Dans chaque cas, il utilise la mise en forme composite pour afficher la valeur TimeSpan à l'aide du spécificateur de format "g".In each case, it uses composite formatting to display the TimeSpan value by using the "g" format specifier. De plus, il met en forme la valeur TimeSpan à l'aide des conventions de format de la culture système actuelle (dans le cas présent, Anglais - États-Unis ou en-US) et de la culture Français - France (fr-FR).In addition, it formats the TimeSpan value by using the formatting conventions of the current system culture (which, in this case, is English - United States or en-US) and the French - France (fr-FR) culture.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      TimeSpan interval1, interval2;
      interval1 = new TimeSpan(7, 45, 16);
      interval2 = new TimeSpan(18, 12, 38);
      
      Console.WriteLine("{0:g} - {1:g} = {2:g}", interval1, 
                        interval2, interval1 - interval2);
      Console.WriteLine(String.Format(new CultureInfo("fr-FR"), 
                        "{0:g} + {1:g} = {2:g}", interval1, 
                        interval2, interval1 + interval2));
      
      interval1 = new TimeSpan(0, 0, 1, 14, 36);
      interval2 = TimeSpan.FromTicks(2143756);      
      Console.WriteLine("{0:g} + {1:g} = {2:g}", interval1, 
                        interval2, interval1 + interval2);
   }
}
// The example displays the following output:
//       7:45:16 - 18:12:38 = -10:27:22
//       7:45:16 + 18:12:38 = 1:1:57:54
//       0:01:14.036 + 0:00:00.2143756 = 0:01:14.2503756
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim interval1, interval2 As TimeSpan
      interval1 = New TimeSpan(7, 45, 16)
      interval2 = New TimeSpan(18, 12, 38)
      
      Console.WriteLine("{0:g} - {1:g} = {2:g}", interval1, 
                        interval2, interval1 - interval2)
      Console.WriteLine(String.Format(New CultureInfo("fr-FR"), 
                        "{0:g} + {1:g} = {2:g}", interval1, 
                        interval2, interval1 + interval2))
      
      interval1 = New TimeSpan(0, 0, 1, 14, 36)
      interval2 = TimeSpan.FromTicks(2143756)      
      Console.WriteLine("{0:g} + {1:g} = {2:g}", interval1, 
                        interval2, interval1 + interval2)
   End Sub
End Module
' The example displays the following output:
'       7:45:16 - 18:12:38 = -10:27:22
'       7:45:16 + 18:12:38 = 1:1:57:54
'       0:01:14.036 + 0:00:00.2143756 = 0:01:14.2503756

Spécificateur de format long général ("G")The General Long ("G") Format Specifier

Le spécificateur de format "G" TimeSpan retourne la représentation sous forme de chaîne d'une valeur TimeSpan sous une forme longue comprenant toujours les jours et les fractions de secondes.The "G" TimeSpan format specifier returns the string representation of a TimeSpan value in a long form that always includes both days and fractional seconds. La chaîne qui résulte du spécificateur de format standard "G" est au format suivant :The string that results from the "G" standard format specifier has the following form:

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

Les éléments entre crochets ([ et ]) sont facultatifs.Elements in square brackets ([ and ]) are optional. Le signe deux-points (:) est un symbole littéral.The colon (:) is a literal symbol. Le tableau suivant décrit les éléments restants.The following table describes the remaining elements.

ÉlémentElement DescriptionDescription
- Signe négatif facultatif, qui indique un intervalle de temps négatif.An optional negative sign, which indicates a negative time interval.
dd Nombre de jours, sans zéros non significatifs.The number of days, with no leading zeros.
hhhh Nombre d'heures, allant de "00" à "23".The number of hours, which ranges from "00" to "23".
mmmm Nombre de minutes, allant de "00" à "59".The number of minutes, which ranges from "00" to "59".
ssss Nombre de secondes, allant de "00" à "59".The number of seconds, which ranges from "00" to "59".
.. Séparateur des fractions de seconde.The fractional seconds separator. Il équivaut à la propriété NumberDecimalSeparator de la culture spécifiée, sans substitutions par l'utilisateur.It is equivalent to the specified culture's NumberDecimalSeparator property without user overrides.
ffffffffffffff Fractions de seconde.The fractional seconds.

Tout comme le spécificateur de format "G", le spécificateur de format "g" est localisé.Like the "G" format specifier, the "g" format specifier is localized. Son séparateur de fraction de seconde est basé sur la propriété NumberDecimalSeparator de la culture actuelle ou de la culture spécifiée.Its fractional seconds separator is based on either the current culture or a specified culture's NumberDecimalSeparator property.

L'exemple suivant instancie deux objets TimeSpan, les utilise pour effectuer des opérations arithmétiques, puis affiche le résultat.The following example instantiates two TimeSpan objects, uses them to perform arithmetic operations, and displays the result. Dans chaque cas, il utilise la mise en forme composite pour afficher la valeur TimeSpan à l'aide du spécificateur de format "G".In each case, it uses composite formatting to display the TimeSpan value by using the "G" format specifier. De plus, il met en forme la valeur TimeSpan à l'aide des conventions de format de la culture système actuelle (dans le cas présent, Anglais - États-Unis ou en-US) et de la culture Français - France (fr-FR).In addition, it formats the TimeSpan value by using the formatting conventions of the current system culture (which, in this case, is English - United States or en-US) and the French - France (fr-FR) culture.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      TimeSpan interval1, interval2;
      interval1 = new TimeSpan(7, 45, 16);
      interval2 = new TimeSpan(18, 12, 38);
      
      Console.WriteLine("{0:G} - {1:G} = {2:G}", interval1, 
                        interval2, interval1 - interval2);
      Console.WriteLine(String.Format(new CultureInfo("fr-FR"), 
                        "{0:G} + {1:G} = {2:G}", interval1, 
                        interval2, interval1 + interval2));
      
      interval1 = new TimeSpan(0, 0, 1, 14, 36);
      interval2 = TimeSpan.FromTicks(2143756);      
      Console.WriteLine("{0:G} + {1:G} = {2:G}", interval1, 
                        interval2, interval1 + interval2);
   }
}
// The example displays the following output:
//       0:07:45:16.0000000 - 0:18:12:38.0000000 = -0:10:27:22.0000000
//       0:07:45:16,0000000 + 0:18:12:38,0000000 = 1:01:57:54,0000000
//       0:00:01:14.0360000 + 0:00:00:00.2143756 = 0:00:01:14.2503756
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim interval1, interval2 As TimeSpan
      interval1 = New TimeSpan(7, 45, 16)
      interval2 = New TimeSpan(18, 12, 38)
      
      Console.WriteLine("{0:G} - {1:G} = {2:G}", interval1, 
                        interval2, interval1 - interval2)
      Console.WriteLine(String.Format(New CultureInfo("fr-FR"), 
                        "{0:G} + {1:G} = {2:G}", interval1, 
                        interval2, interval1 + interval2))
      
      interval1 = New TimeSpan(0, 0, 1, 14, 36)
      interval2 = TimeSpan.FromTicks(2143756)      
      Console.WriteLine("{0:G} + {1:G} = {2:G}", interval1, 
                        interval2, interval1 + interval2)
   End Sub
End Module
' The example displays the following output:
'       0:07:45:16.0000000 - 0:18:12:38.0000000 = -0:10:27:22.0000000
'       0:07:45:16,0000000 + 0:18:12:38,0000000 = 1:01:57:54,0000000
'       0:00:01:14.0360000 + 0:00:00:00.2143756 = 0:00:01:14.2503756

Voir aussiSee also