DateTimeOffset.ToString Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Convertit la valeur de l'objet DateTimeOffset actif en sa représentation équivalente sous forme de chaîne.
Surcharges
ToString() |
Convertit la valeur de l'objet DateTimeOffset actif en sa représentation équivalente sous forme de chaîne. |
ToString(IFormatProvider) |
Convertit la valeur de l'objet DateTimeOffset en cours en représentation sous forme de chaîne équivalente à l'aide des informations de format propres à la culture spécifiées. |
ToString(String) |
Convertit la valeur de l'objet DateTimeOffset actuel en sa représentation sous forme de chaîne équivalente en utilisant le format spécifié. |
ToString(String, IFormatProvider) |
Convertit la valeur de l'objet DateTimeOffset actuel en sa représentation sous forme de chaîne équivalente à l'aide du format et des informations de format spécifiques à la culture spécifiés. |
ToString()
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
Convertit la valeur de l'objet DateTimeOffset actif en sa représentation équivalente sous forme de chaîne.
public:
override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Retours
Représentation sous forme de chaîne d'un objet DateTimeOffsetqui inclut l'offset ajouté à la fin de la chaîne.
Exceptions
La date et l’heure sont en dehors de la plage de dates prise en charge par le calendrier utilisé par la culture actuelle.
Exemples
L’exemple suivant illustre les appels à la ToString() méthode et affiche sa sortie sur un système dont la culture actuelle est en-us.
DateTimeOffset thisDate;
// Show output for UTC time
thisDate = DateTimeOffset.UtcNow;
Console.WriteLine(thisDate.ToString()); // Displays 3/28/2007 7:13:50 PM +00:00
// Show output for local time
thisDate = DateTimeOffset.Now;
Console.WriteLine(thisDate.ToString()); // Displays 3/28/2007 12:13:50 PM -07:00
// Show output for arbitrary time offset
thisDate = thisDate.ToOffset(new TimeSpan(-5, 0, 0));
Console.WriteLine(thisDate.ToString()); // Displays 3/28/2007 2:13:50 PM -05:00
// Show output for UTC time
let thisDate = DateTimeOffset.UtcNow
printfn $"{thisDate.ToString()}" // Displays 3/28/2007 7:13:50 PM +00:00
// Show output for local time
let thisDate = DateTimeOffset.Now
printfn $"{thisDate.ToString()}" // Displays 3/28/2007 12:13:50 PM -07:00
// Show output for arbitrary time offset
let thisDate = thisDate.ToOffset(TimeSpan(-5, 0, 0))
printfn $"{thisDate.ToString()}" // Displays 3/28/2007 2:13:50 PM -05:00
Dim thisDate As DateTimeOffset
' Show output for UTC time
thisDate = DateTimeOffset.UtcNow
Console.WriteLine(thisDate.ToString()) ' Displays 3/28/2007 7:13:50 PM +00:00
' Show output for local time
thisDate = DateTimeOffset.Now
Console.WriteLine(thisDate.ToString()) ' Displays 3/28/2007 12:13:50 PM -07:00
' Show output for arbitrary time offset
thisDate = thisDate.ToOffset(new TimeSpan(-5, 0, 0))
Console.WriteLine(thisDate.ToString()) ' Displays 3/28/2007 2:13:50 PM -05:00
Remarques
La valeur de retour de cette méthode est identique à celle de la DateTime.ToString() méthode, sauf qu’elle inclut un espace suivi du décalage ajouté à la fin de la chaîne. En d’autres termes, il met en forme la sortie à l’aide du modèle de date courte, du modèle de temps long et de la zzz
chaîne de format personnalisée, chaque élément étant séparé de l’élément précédent par un espace. Par exemple, si DateTime.ToString() retourne une valeur de 12/12/2008 18 :15 :50, ToString() retourne la valeur 1/12/2008 18 :15 :50 -08 :00 pour une durée de huit heures en retard sur le temps universel coordonné (UTC).
Cette méthode utilise des informations de mise en forme dérivées de la culture actuelle. Pour plus d'informations, consultez CurrentCulture. D’autres surcharges de la ToString méthode vous permettent de spécifier la culture dont la mise en forme doit être utilisée et de définir le modèle de sortie de la DateTimeOffset valeur.
Notes pour les appelants
La ToString() méthode retourne la représentation sous forme de chaîne de la date et de l’heure dans le calendrier utilisé par la culture actuelle. Si la valeur de l’instance actuelle DateTimeOffset est antérieure MinSupportedDateTime ou ultérieure à MaxSupportedDateTime, la méthode lève un ArgumentOutOfRangeException. L'exemple suivant illustre cette situation. Il tente de mettre en forme une date qui est en dehors de la plage de la HijriCalendar classe lorsque la culture actuelle est arabe (Syrie).
using System;
using System.Globalization;
using System.Threading;
public class Example
{
public static void Main()
{
DateTimeOffset date1 = new DateTimeOffset(new DateTime(550, 1, 1),
TimeSpan.Zero);
CultureInfo dft;
CultureInfo arSY = new CultureInfo("ar-SY");
arSY.DateTimeFormat.Calendar = new HijriCalendar();
// Change current culture to ar-SY.
dft = Thread.CurrentThread.CurrentCulture;
Thread.CurrentThread.CurrentCulture = arSY;
// Display the date using the current culture's calendar.
try {
Console.WriteLine(date1.ToString());
}
catch (ArgumentOutOfRangeException) {
Console.WriteLine("{0} is earlier than {1} or later than {2}",
date1.ToString("d", CultureInfo.InvariantCulture),
arSY.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture),
arSY.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture));
}
// Restore the default culture.
Thread.CurrentThread.CurrentCulture = dft;
}
}
// The example displays the following output:
// 01/01/0550 is earlier than 07/18/0622 or later than 12/31/9999
open System
open System.Globalization
open System.Threading
let date1 = DateTimeOffset(DateTime(550, 1, 1), TimeSpan.Zero)
let arSY = CultureInfo "ar-SY"
arSY.DateTimeFormat.Calendar <- HijriCalendar()
// Change current culture to ar-SY.
let dft = Thread.CurrentThread.CurrentCulture
Thread.CurrentThread.CurrentCulture <- arSY
// Display the date using the current culture's calendar.
try
printfn $"{date1}"
with :? ArgumentOutOfRangeException ->
printfn $"""{date1.ToString("d", CultureInfo.InvariantCulture)} is earlier than {arSY.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture)} or later than {arSY.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture)}"""
// Restore the default culture.
Thread.CurrentThread.CurrentCulture <- dft
// The example displays the following output:
// 01/01/0550 is earlier than 07/18/0622 or later than 12/31/9999
Imports System.Globalization
Imports System.Threading
Module Example
Public Sub Main()
Dim date1 As New DateTimeOffset(#1/1/550#, TimeSpan.Zero)
Dim dft As CultureInfo
Dim arSY As New CultureInfo("ar-SY")
arSY.DateTimeFormat.Calendar = New HijriCalendar()
' Change current culture to ar-SY.
dft = Thread.CurrentThread.CurrentCulture
Thread.CurrentThread.CurrentCulture = arSY
' Display the date using the current culture's calendar.
Try
Console.WriteLine(date1.ToString())
Catch e As ArgumentOutOfRangeException
Console.WriteLine("{0} is earlier than {1:d} or later than {2:d}", _
date1.ToString("d", CultureInfo.InvariantCulture), _
arSY.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture), _
arSY.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture))
End Try
' Restore the default culture.
Thread.CurrentThread.CurrentCulture = dft
End Sub
End Module
' The example displays the following output:
' 01/01/0550 is earlier than 07/18/0622 or later than 12/31/9999
S’applique à
ToString(IFormatProvider)
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
Convertit la valeur de l'objet DateTimeOffset en cours en représentation sous forme de chaîne équivalente à l'aide des informations de format propres à la culture spécifiées.
public:
System::String ^ ToString(IFormatProvider ^ formatProvider);
public string ToString (IFormatProvider formatProvider);
public string ToString (IFormatProvider? formatProvider);
override this.ToString : IFormatProvider -> string
Public Function ToString (formatProvider As IFormatProvider) As String
Paramètres
- formatProvider
- IFormatProvider
Objet qui fournit des informations de mise en forme propres à la culture.
Retours
Représentation sous forme de chaîne de la valeur de l’objet DateTimeOffset actuel, telle que spécifiée par formatProvider
.
Exceptions
La date et l’heure sont en dehors de la plage de dates prise en charge par le calendrier utilisé par formatProvider
.
Exemples
L’exemple suivant affiche un DateTimeOffset objet à l’aide d’objets CultureInfo qui représentent la culture invariante, ainsi que quatre autres cultures.
CultureInfo[] cultures = new CultureInfo[] {CultureInfo.InvariantCulture,
new CultureInfo("en-us"),
new CultureInfo("fr-fr"),
new CultureInfo("de-DE"),
new CultureInfo("es-ES")};
DateTimeOffset thisDate = new DateTimeOffset(2007, 5, 1, 9, 0, 0,
TimeSpan.Zero);
foreach (CultureInfo culture in cultures)
{
string cultureName;
if (string.IsNullOrEmpty(culture.Name))
cultureName = culture.NativeName;
else
cultureName = culture.Name;
Console.WriteLine("In {0}, {1}",
cultureName, thisDate.ToString(culture));
}
// The example produces the following output:
// In Invariant Language (Invariant Country), 05/01/2007 09:00:00 +00:00
// In en-US, 5/1/2007 9:00:00 AM +00:00
// In fr-FR, 01/05/2007 09:00:00 +00:00
// In de-DE, 01.05.2007 09:00:00 +00:00
// In es-ES, 01/05/2007 9:00:00 +00:00
let cultures =
[| CultureInfo.InvariantCulture
CultureInfo "en-us"
CultureInfo "fr-fr"
CultureInfo "de-DE"
CultureInfo "es-ES" |]
let thisDate = DateTimeOffset(2007, 5, 1, 9, 0, 0, TimeSpan.Zero)
for culture in cultures do
let cultureName =
if String.IsNullOrEmpty culture.Name then
culture.NativeName
else
culture.Name
printfn $"In {cultureName}, {thisDate.ToString culture}"
// The example produces the following output:
// In Invariant Language (Invariant Country), 05/01/2007 09:00:00 +00:00
// In en-US, 5/1/2007 9:00:00 AM +00:00
// In fr-FR, 01/05/2007 09:00:00 +00:00
// In de-DE, 01.05.2007 09:00:00 +00:00
// In es-ES, 01/05/2007 9:00:00 +00:00
Dim cultures() As CultureInfo = {CultureInfo.InvariantCulture, _
New CultureInfo("en-us"), _
New CultureInfo("fr-fr"), _
New CultureInfo("de-DE"), _
New CultureInfo("es-ES")}
Dim thisDate As New DateTimeOffset(#5/1/2007 9:00AM#, TimeSpan.Zero)
For Each culture As CultureInfo In cultures
Dim cultureName As String
If String.IsNullOrEmpty(culture.Name) Then
cultureName = culture.NativeName
Else
cultureName = culture.Name
End If
Console.WriteLine("In {0}, {1}", _
cultureName, thisDate.ToString(culture))
Next
' The example produces the following output:
' In Invariant Language (Invariant Country), 05/01/2007 09:00:00 +00:00
' In en-US, 5/1/2007 9:00:00 AM +00:00
' In fr-FR, 01/05/2007 09:00:00 +00:00
' In de-DE, 01.05.2007 09:00:00 +00:00
' In es-ES, 01/05/2007 9:00:00 +00:00
Remarques
La valeur de retour de cette méthode est identique à celle de sa surcharge équivalente de la DateTime.ToString méthode, sauf qu’elle inclut un espace suivi du décalage ajouté à la fin de la chaîne. En d’autres termes, il met en forme la sortie à l’aide du modèle de date courte, du modèle de temps long et de la zzz
chaîne de format personnalisée, chaque élément étant séparé de l’élément précédent par un espace.
Le format de ces trois éléments est défini par le formatProvider
paramètre . Le formatProvider
paramètre peut être l’un des éléments suivants :
Objet CultureInfo qui représente la culture dont les conventions de mise en forme sont appliquées à la chaîne retournée. L’objet DateTimeFormatInfo retourné par la CultureInfo.DateTimeFormat propriété définit la mise en forme de la chaîne retournée.
Objet DateTimeFormatInfo qui définit le format des données de date et d’heure.
Si formatProvider
a la valeur null
, l’objet DateTimeFormatInfo associé à la culture actuelle est utilisé (voir CurrentCulture).
Notes pour les appelants
La ToString(IFormatProvider) méthode retourne la représentation sous forme de chaîne de la date et de l’heure dans le calendrier utilisé par la culture représentée par le formatProvider
paramètre . Son calendrier est défini par la Calendar propriété . Si la valeur de l’instance actuelle DateTimeOffset est antérieure MinSupportedDateTime ou ultérieure à MaxSupportedDateTime, la méthode lève un ArgumentOutOfRangeException. L'exemple suivant illustre cette situation. Il tente de mettre en forme une date qui se trouve en dehors de la plage de la JapaneseCalendar classe .
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
CultureInfo jaJP = new CultureInfo("ja-JP");
jaJP.DateTimeFormat.Calendar = new JapaneseCalendar();
DateTimeOffset date1 = new DateTimeOffset(new DateTime(1867, 1, 1),
TimeSpan.Zero);
try {
Console.WriteLine(date1.ToString(jaJP));
}
catch (ArgumentOutOfRangeException) {
Console.WriteLine("{0:d} is earlier than {1:d} or later than {2:d}",
date1,
jaJP.DateTimeFormat.Calendar.MinSupportedDateTime,
jaJP.DateTimeFormat.Calendar.MaxSupportedDateTime);
}
}
}
// The example displays the following output:
// 1/1/1867 is earlier than 9/8/1868 or later than 12/31/9999
open System
open System.Globalization
let jaJP = CultureInfo "ja-JP"
jaJP.DateTimeFormat.Calendar <- JapaneseCalendar()
let date1 = DateTimeOffset(DateTime(1867, 1, 1), TimeSpan.Zero)
try
printfn $"{date1.ToString jaJP}"
with :? ArgumentOutOfRangeException ->
printfn $"{date1:d} is earlier than {jaJP.DateTimeFormat.Calendar.MinSupportedDateTime:d} or later than {jaJP.DateTimeFormat.Calendar.MaxSupportedDateTime:d}"
// The example displays the following output:
// 1/1/1867 is earlier than 9/8/1868 or later than 12/31/9999
Imports System.Globalization
Module Example
Public Sub Main()
Dim jaJP As New CultureInfo("ja-JP")
jaJP.DateTimeFormat.Calendar = New JapaneseCalendar()
Dim date1 As New DateTimeOffset(#01/01/1867#, TimeSpan.Zero)
Try
Console.WriteLine(date1.ToString(jaJP))
Catch e As ArgumentOutOfRangeException
Console.WriteLine("{0:d} is earlier than {1:d} or later than {2:d}", _
date1, _
jaJP.DateTimeFormat.Calendar.MinSupportedDateTime, _
jaJP.DateTimeFormat.Calendar.MaxSupportedDateTime)
End Try
End Sub
End Module
' The example displays the following output:
' 1/1/1867 is earlier than 9/8/1868 or later than 12/31/9999
S’applique à
ToString(String)
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
Convertit la valeur de l'objet DateTimeOffset actuel en sa représentation sous forme de chaîne équivalente en utilisant le format spécifié.
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
Paramètres
- format
- String
Chaîne de format.
Retours
Représentation sous forme de chaîne de la valeur de l’objet DateTimeOffset actuel, telle que spécifiée par format
.
Exceptions
La longueur de format
est égale à un, et ce n’est pas l’un des caractères spécificateurs de format standard définis pour DateTimeFormatInfo.
- ou -
format
ne contient pas un modèle de format personnalisé valide.
La date et l’heure sont en dehors de la plage de dates prise en charge par le calendrier utilisé par la culture actuelle.
Exemples
L’exemple suivant affiche un DateTimeOffset objet dans la console à l’aide de chacun des spécificateurs de format de date et d’heure standard. La sortie est mise en forme à l’aide de la culture en-us.
DateTimeOffset outputDate = new DateTimeOffset(2007, 10, 31, 21, 0, 0,
new TimeSpan(-8, 0, 0));
string specifier;
// Output date using each standard date/time format specifier
specifier = "d";
// Displays d: 10/31/2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "D";
// Displays D: Wednesday, October 31, 2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "t";
// Displays t: 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "T";
// Displays T: 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "f";
// Displays f: Wednesday, October 31, 2007 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "F";
// Displays F: Wednesday, October 31, 2007 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "g";
// Displays g: 10/31/2007 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "G";
// Displays G: 10/31/2007 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "M"; // 'm' is identical
// Displays M: October 31
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "R"; // 'r' is identical
// Displays R: Thu, 01 Nov 2007 05:00:00 GMT
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "s";
// Displays s: 2007-10-31T21:00:00
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
specifier = "u";
// Displays u: 2007-11-01 05:00:00Z
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
// Specifier is not supported
specifier = "U";
try
{
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
}
catch (FormatException)
{
Console.WriteLine("{0}: Not supported.", specifier);
}
specifier = "Y"; // 'y' is identical
// Displays Y: October, 2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier));
let outputDate = DateTimeOffset(2007, 10, 31, 21, 0, 0, TimeSpan(-8, 0, 0))
// Output date using each standard date/time format specifier
let specifier = "d"
// Displays d: 10/31/2007
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "D"
// Displays D: Wednesday, October 31, 2007
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "t"
// Displays t: 9:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "T"
// Displays T: 9:00:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "f"
// Displays f: Wednesday, October 31, 2007 9:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "F"
// Displays F: Wednesday, October 31, 2007 9:00:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "g"
// Displays g: 10/31/2007 9:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "G"
// Displays G: 10/31/2007 9:00:00 PM
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "M" // 'm' is identical
// Displays M: October 31
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "R" // 'r' is identical
// Displays R: Thu, 01 Nov 2007 05:00:00 GMT
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "s"
// Displays s: 2007-10-31T21:00:00
printfn $"{specifier}: {outputDate.ToString specifier}"
let specifier = "u"
// Displays u: 2007-11-01 05:00:00Z
printfn $"{specifier}: {outputDate.ToString specifier}"
// Specifier is not supported
let specifier = "U"
try
printfn $"{specifier}: {outputDate.ToString specifier}"
with :? FormatException ->
printfn $"{specifier}: Not supported."
let specifier = "Y" // 'y' is identical
// Displays Y: October, 2007
printfn $"{specifier}: {outputDate.ToString specifier}"
Dim outputDate As New DateTimeOffset(#10/31/2007 9:00PM#, _
New TimeSpan(-8, 0, 0))
Dim specifier As String
' Output date using each standard date/time format specifier
specifier = "d"
' Displays d: 10/31/2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "D"
' Displays D: Wednesday, October 31, 2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "t"
' Displays t: 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "T"
' Displays T: 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "f"
' Displays f: Wednesday, October 31, 2007 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "F"
' Displays F: Wednesday, October 31, 2007 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "g"
' Displays g: 10/31/2007 9:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "G"
' Displays G: 10/31/2007 9:00:00 PM
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "M" ' 'm' is identical
' Displays M: October 31
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "R" ' 'r' is identical
' Displays R: Thu, 01 Nov 2007 05:00:00 GMT
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "s"
' Displays s: 2007-10-31T21:00:00
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
specifier = "u"
' Displays u: 2007-11-01 05:00:00Z
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
' Specifier is not supported
specifier = "U"
Try
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
Catch e As FormatException
Console.WriteLine("{0}: Not supported.", specifier)
End Try
specifier = "Y" ' 'y' is identical
' Displays Y: October, 2007
Console.WriteLine("{0}: {1}", specifier, outputDate.ToString(specifier))
Remarques
Le format
paramètre doit contenir un caractère spécificateur de format unique (voir Chaînes de format de date et d’heure standard) ou un modèle de format personnalisé (voir Chaînes de format de date et d’heure personnalisées) qui définit le format de la chaîne retournée. Si format
est une chaîne null ou vide (« »), la DateTimeOffset valeur est sortie à l’aide du format par défaut.
Le tableau suivant montre l’opération exacte de certains spécificateurs de format lorsqu’ils sont utilisés avec DateTimeOffset, ce qui diffère de leur comportement lorsqu’ils sont utilisés avec DateTime.
Spécificateur de format existant | Nouveau comportement |
---|---|
"K" | Conçu pour aller-retour d’une date et d’une heure. Avec DateTimeOffset, est mappé à « zzz » (le décalage est toujours affiché avec des heures et des minutes). Notez que « K » est un spécificateur de format personnalisé ; il ne peut pas apparaître en tant que caractère unique dans format . |
"U" | Non pris en charge. |
« r » | Convertit l’objet DateTimeOffset en temps universel coordonné (UTC) et le génère à l’aide de la chaîne ddd, dd MMM yyyy HH:mm:ss GMT de format personnalisée . |
"u" | Convertit l’objet DateTimeOffset en UTC et le génère au format yyyy-MM-dd HH:mm:ssZ . |
Les spécificateurs de format de date et d’heure standard restants se comportent de la même façon avec la ToString(String) méthode qu’avec la ToString méthode .
Cette méthode utilise des informations de mise en forme dérivées de la culture actuelle. Pour plus d'informations, consultez CurrentCulture.
Notes pour les appelants
La ToString(String) méthode retourne la représentation sous forme de chaîne de la date et de l’heure dans le calendrier utilisé par la culture actuelle. Si la valeur de l’instance actuelle DateTimeOffset est antérieure MinSupportedDateTime ou ultérieure à MaxSupportedDateTime, la méthode lève un ArgumentOutOfRangeException. L'exemple suivant illustre cette situation. Il tente de mettre en forme une date qui est en dehors de la plage de la HebrewCalendar classe lorsque la culture actuelle est hébreu (Israël).
using System;
using System.Globalization;
using System.Threading;
public class Example
{
public static void Main()
{
DateTimeOffset date1 = new DateTimeOffset(new DateTime(1550, 7, 21),
TimeSpan.Zero);
CultureInfo dft;
CultureInfo heIL = new CultureInfo("he-IL");
heIL.DateTimeFormat.Calendar = new HebrewCalendar();
// Change current culture to he-IL.
dft = Thread.CurrentThread.CurrentCulture;
Thread.CurrentThread.CurrentCulture = heIL;
// Display the date using the current culture's calendar.
try {
Console.WriteLine(date1.ToString("G"));
}
catch (ArgumentOutOfRangeException) {
Console.WriteLine("{0} is earlier than {1} or later than {2}",
date1.ToString("d", CultureInfo.InvariantCulture),
heIL.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture),
heIL.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture));
}
// Restore the default culture.
Thread.CurrentThread.CurrentCulture = dft;
}
}
// The example displays the following output:
// 07/21/1550 is earlier than 01/01/1583 or later than 09/29/2239
open System
open System.Globalization
open System.Threading
let date1 = DateTimeOffset(DateTime(1550, 7, 21), TimeSpan.Zero)
let heIL = CultureInfo "he-IL"
heIL.DateTimeFormat.Calendar <- HebrewCalendar()
// Change current culture to he-IL.
let dft = Thread.CurrentThread.CurrentCulture
Thread.CurrentThread.CurrentCulture <- heIL
// Display the date using the current culture's calendar.
try
printfn $"{date1:G}"
with :? ArgumentOutOfRangeException ->
printfn $"""{date1.ToString("d", CultureInfo.InvariantCulture)} is earlier than {heIL.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture)} or later than {heIL.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture)}"""
// Restore the default culture.
Thread.CurrentThread.CurrentCulture <- dft
// The example displays the following output:
// 07/21/1550 is earlier than 01/01/1583 or later than 09/29/2239
Imports System.Globalization
Imports System.Threading
Module Example
Public Sub Main()
Dim date1 As New DateTimeOffset(#7/21/1550#, TimeSpan.Zero)
Dim dft As CultureInfo
Dim heIL As New CultureInfo("he-IL")
heIL.DateTimeFormat.Calendar = New HebrewCalendar()
' Change current culture to he-IL.
dft = Thread.CurrentThread.CurrentCulture
Thread.CurrentThread.CurrentCulture = heIL
' Display the date using the current culture's calendar.
Try
Console.WriteLine(date1.ToString("G"))
Catch e As ArgumentOutOfRangeException
Console.WriteLine("{0} is earlier than {1} or later than {2}", _
date1.ToString("d", CultureInfo.InvariantCulture), _
heIL.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture), _
heIL.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture))
End Try
' Restore the default culture.
Thread.CurrentThread.CurrentCulture = dft
End Sub
End Module
' The example displays the following output:
' 07/21/1550 is earlier than 01/01/1583 or later than 09/29/2239
Voir aussi
S’applique à
ToString(String, IFormatProvider)
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
- Source:
- DateTimeOffset.cs
Convertit la valeur de l'objet DateTimeOffset actuel en sa représentation sous forme de chaîne équivalente à l'aide du format et des informations de format spécifiques à la culture spécifiés.
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
Paramètres
- format
- String
Chaîne de format.
- formatProvider
- IFormatProvider
Objet qui fournit des informations de mise en forme propres à la culture.
Retours
Représentation sous forme de chaîne de la valeur de l’objet DateTimeOffset actif, tel que spécifié par format
et provider
.
Implémente
Exceptions
La longueur de format
est égale à un, et ce n’est pas l’un des caractères spécificateurs de format standard définis pour DateTimeFormatInfo.
- ou -
format
ne contient pas un modèle de format personnalisé valide.
La date et l’heure sont en dehors de la plage de dates prise en charge par le calendrier utilisé par formatProvider
.
Exemples
L’exemple suivant utilise la ToString(String, IFormatProvider) méthode pour afficher un DateTimeOffset objet à l’aide d’une chaîne de format personnalisée pour plusieurs cultures différentes.
DateTimeOffset outputDate = new DateTimeOffset(2007, 11, 1, 9, 0, 0,
new TimeSpan(-7, 0, 0));
string format = "dddd, MMM dd yyyy HH:mm:ss zzz";
// Output date and time using custom format specification
Console.WriteLine(outputDate.ToString(format, null as DateTimeFormatInfo));
Console.WriteLine(outputDate.ToString(format, CultureInfo.InvariantCulture));
Console.WriteLine(outputDate.ToString(format,
new CultureInfo("fr-FR")));
Console.WriteLine(outputDate.ToString(format,
new CultureInfo("es-ES")));
// The example displays the following output to the console:
// Thursday, Nov 01 2007 09:00:00 -07:00
// Thursday, Nov 01 2007 09:00:00 -07:00
// jeudi, nov. 01 2007 09:00:00 -07:00
// jueves, nov 01 2007 09:00:00 -07:00
let outputDate = DateTimeOffset(2007, 11, 1, 9, 0, 0, TimeSpan(-7, 0, 0))
let format = "dddd, MMM dd yyyy HH:mm:ss zzz"
// Output date and time using custom format specification
printfn $"{outputDate.ToString(format, null)}"
printfn $"{outputDate.ToString(format, CultureInfo.InvariantCulture)}"
printfn $"""{outputDate.ToString(format, CultureInfo "fr-FR")}"""
printfn $"""{outputDate.ToString(format, CultureInfo "es-ES")}"""
// The example displays the following output to the console:
// Thursday, Nov 01 2007 09:00:00 -07:00
// Thursday, Nov 01 2007 09:00:00 -07:00
// jeudi, nov. 01 2007 09:00:00 -07:00
// jueves, nov 01 2007 09:00:00 -07:00
Dim outputDate As New DateTimeOffset(#11/1/2007 9:00AM#, _
New TimeSpan(-7, 0, 0))
Dim format As String = "dddd, MMM dd yyyy HH:mm:ss zzz"
' Output date and time using custom format specification
Console.WriteLine(outputDate.ToString(format, Nothing))
Console.WriteLine(outputDate.ToString(format, CultureInfo.InvariantCulture))
Console.WriteLine(outputDate.ToString(format, _
New CultureInfo("fr-FR")))
Console.WriteLine(outputDate.ToString(format, _
New CultureInfo("es-ES")))
' The example displays the following output to the console:
' Thursday, Nov 01 2007 09:00:00 -07:00
' Thursday, Nov 01 2007 09:00:00 -07:00
' jeudi, nov. 01 2007 09:00:00 -07:00
' jueves, nov 01 2007 09:00:00 -07:00
Remarques
Le format
paramètre doit contenir un spécificateur de format unique (voir Chaînes de format de date et d’heure standard) ou un modèle de format personnalisé (voir Chaînes de format de date et d’heure personnalisées). Si format
est une chaîne null ou vide (« »), l’objet DateTimeOffset est généré à l’aide du format par défaut.
Le tableau suivant montre l’opération exacte de certains spécificateurs de format lorsqu’ils sont utilisés avec DateTimeOffset, ce qui diffère de leur comportement lorsqu’ils sont utilisés avec DateTime.
Spécificateur de format existant | Nouveau comportement |
---|---|
"K" | Conçu pour aller-retour d’une date et d’une heure. Avec DateTimeOffset, est mappé à « zzz » (le décalage est toujours affiché avec des heures et des minutes). Notez que « K » est un spécificateur de format personnalisé ; il ne peut pas apparaître en tant que caractère unique dans format . |
"U" | Non pris en charge. |
« r » | Convertit l’objet DateTimeOffset en temps universel coordonné (UTC) et le génère à l’aide de la chaîne ddd, dd MMM yyyy HH:mm:ss GMT de format personnalisée . |
"u" | Convertit la valeur en DateTimeOffset UTC et la génère à l’aide du format yyyy-MM-dd HH:mm:ssZ . |
Les autres spécificateurs de format de date et d’heure standard se comportent de la même façon avec la ToString(String) méthode qu’avec la ToString méthode .
Le modèle qui correspond aux spécificateurs de format standard, ainsi que les symboles et les noms des composants de date et d’heure, est défini par le formatProvider
paramètre . Le formatProvider
paramètre peut être l’un des éléments suivants :
Objet CultureInfo qui représente la culture dont la mise en forme est utilisée dans
input
. L’objet DateTimeFormatInfo retourné par la CultureInfo.DateTimeFormat propriété définit la mise en forme utilisée dansinput
.Objet DateTimeFormatInfo qui définit le format des données de date et d’heure.
Si formatProvider
est null
, l’objet DateTimeFormatInfo associé à la culture actuelle est utilisé (voir CurrentCulture).
Notes pour les appelants
La ToString(String, IFormatProvider) méthode retourne la représentation sous forme de chaîne de la date et de l’heure dans le calendrier utilisé par le formatProvider
paramètre . Son calendrier est défini par la Calendar propriété . Si la valeur de l’instance actuelle DateTimeOffset est antérieure MinSupportedDateTime ou ultérieure à MaxSupportedDateTime, la méthode lève un ArgumentOutOfRangeException. L'exemple suivant illustre cette situation. Il tente de mettre en forme une date qui se trouve en dehors de la plage de la UmAlQuraCalendar classe .
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
CultureInfo arSA = new CultureInfo("ar-SA");
arSA.DateTimeFormat.Calendar = new UmAlQuraCalendar();
DateTimeOffset date1 = new DateTimeOffset(new DateTime(1890, 9, 10),
TimeSpan.Zero);
try {
Console.WriteLine(date1.ToString("d", arSA));
}
catch (ArgumentOutOfRangeException) {
Console.WriteLine("{0:d} is earlier than {1:d} or later than {2:d}",
date1,
arSA.DateTimeFormat.Calendar.MinSupportedDateTime,
arSA.DateTimeFormat.Calendar.MaxSupportedDateTime);
}
}
}
// The example displays the following output:
// 9/10/1890 is earlier than 4/30/1900 or later than 5/13/2029
open System
open System.Globalization
let arSA = CultureInfo "ar-SA"
arSA.DateTimeFormat.Calendar <- UmAlQuraCalendar()
let date1 = DateTimeOffset(DateTime(1890, 9, 10), TimeSpan.Zero)
try
printfn $"""{date1.ToString("d", arSA)}"""
with :? ArgumentOutOfRangeException ->
printfn $"{date1:d} is earlier than {arSA.DateTimeFormat.Calendar.MinSupportedDateTime:d} or later than {arSA.DateTimeFormat.Calendar.MaxSupportedDateTime:d}"
// The example displays the following output:
// 9/10/1890 is earlier than 4/30/1900 or later than 11/16/2077
Imports System.Globalization
Module Example
Public Sub Main()
Dim arSA As New CultureInfo("ar-SA")
arSA.DateTimeFormat.Calendar = New UmAlQuraCalendar()
Dim date1 As New DateTimeOffset(#09/10/1890#, TimeSpan.Zero)
Try
Console.WriteLine(date1.ToString("d", arSA))
Catch e As ArgumentOutOfRangeException
Console.WriteLine("{0:d} is earlier than {1:d} or later than {2:d}", _
date1, _
arSA.DateTimeFormat.Calendar.MinSupportedDateTime, _
arSA.DateTimeFormat.Calendar.MaxSupportedDateTime)
End Try
End Sub
End Module
' The example displays the following output:
' 9/10/1890 is earlier than 4/30/1900 or later than 5/13/2029
Voir aussi
- Chaînes de format de date et d'heure standard
- Custom Date and Time Format Strings
- Exemple : utilitaire de mise en forme .NET Core WinForms (C#)
- Exemple : utilitaire de mise en forme .NET Core WinForms (Visual Basic)
S’applique à
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour