DateTimeOffset.ToString Metodo

Definizione

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente.

Overload

ToString()

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente.

ToString(IFormatProvider)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando le informazioni di formattazione specifiche delle impostazioni cultura definite.

ToString(String)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando il formato specificato.

ToString(String, IFormatProvider)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando il formato specificato e le informazioni sul formato specifiche delle impostazioni cultura indicate.

ToString()

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente.

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

Restituisce

String

Rappresentazione di stringa di un oggetto DateTimeOffset che include l'offset aggiunto alla fine della stringa.

Eccezioni

La data e l'ora non sono comprese nell'intervallo di date supportato dal calendario usato dalle impostazioni cultura correnti.

Esempio

Nell'esempio seguente vengono illustrate le chiamate al metodo e viene visualizzato l'output ToString() in un sistema le cui impostazioni cultura correnti sono 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

Commenti

Il valore restituito di questo metodo è identico a quello del DateTime.ToString() metodo, ad eccezione del fatto che include uno spazio seguito dall'offset aggiunto alla fine della stringa. In altre parole, formatta l'output usando il modello di data breve, il modello di tempo lungo e la zzz stringa di formato personalizzata, con ogni elemento separato dall'elemento precedente da uno spazio. Ad esempio, se DateTime.ToString() restituisce un valore 1/12/2008 6:15:50 PM, ToString() restituisce un valore 1/12/2008 12:15:50 -08:00 per un'ora che è otto ore dietro l'ora UTC (Coordinated Universal Time).

Questo metodo usa le informazioni di formattazione derivate dalle impostazioni cultura correnti. Per altre informazioni, vedere CurrentCulture. Altri overload del ToString metodo consentono di specificare le impostazioni cultura di cui usare la formattazione e di definire il modello di output del DateTimeOffset valore.

Note per i chiamanti

Il ToString() metodo restituisce la rappresentazione di stringa della data e dell'ora nel calendario utilizzato dalle impostazioni cultura correnti. Se il valore dell'istanza corrente è precedente MinSupportedDateTime o successivo a MaxSupportedDateTime, il metodo genera un'eccezione ArgumentOutOfRangeException.DateTimeOffset Nell'esempio seguente viene illustrato questo concetto. Tenta di formattare una data che non rientra nell'intervallo della HijriCalendar classe quando le impostazioni cultura correnti sono arabe (Siria).

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

Si applica a

ToString(IFormatProvider)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando le informazioni di formattazione specifiche delle impostazioni cultura definite.

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

Parametri

formatProvider
IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura.

Restituisce

String

Rappresentazione di stringa del valore dell'oggetto DateTimeOffset corrente, come specificato da formatProvider.

Eccezioni

La data e l'ora non sono comprese nell'intervallo di date supportato dal calendario usato da formatProvider.

Esempio

Nell'esempio seguente viene visualizzato un DateTimeOffset oggetto che usa CultureInfo oggetti che rappresentano le impostazioni cultura invarianti, nonché quattro altre impostazioni cultura.

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

Commenti

Il valore restituito di questo metodo è identico a quello dell'overload equivalente del DateTime.ToString metodo, ad eccezione del fatto che include uno spazio seguito dall'offset aggiunto alla fine della stringa. In altre parole, formatta l'output usando il modello di data breve, il modello di tempo lungo e la zzz stringa di formato personalizzata, con ogni elemento separato dall'elemento precedente da uno spazio.

Il formato di questi tre elementi è definito dal formatProvider parametro . Il formatProvider parametro può essere uno dei seguenti:

Se formatProvider è null, viene usato l'oggetto DateTimeFormatInfo associato alle impostazioni cultura correnti (vedere CurrentCulture).

Note per i chiamanti

Il ToString(IFormatProvider) metodo restituisce la rappresentazione stringa della data e dell'ora nel calendario usato dalle impostazioni cultura rappresentate dal formatProvider parametro . Il calendario è definito dalla Calendar proprietà . Se il valore dell'istanza corrente DateTimeOffset è precedente o successivo a MinSupportedDateTime MaxSupportedDateTime, il metodo genera un ArgumentOutOfRangeExceptionoggetto . Nell'esempio seguente viene illustrato questo concetto. Tenta di formattare una data esterna all'intervallo JapaneseCalendar della classe.

::code language="csharp" source="~/snippets/csharp/System/DateTimeOffset/ToString/datetimeoffset.tostring.argumentoutofrangeexception1.cs" interactive="try-dotnet" id="Snippet1": ::code language="fsharp" source="~//cs" snippets/fsharp/VS_Snippets_CLR_System/system.datetimeoffset.tostring.argumentoutofrangeexception/fs/datetimeoffset.tostring.argumentoutofrangeexception1.fs" id="Snippet1"::: ::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_ System/system.datetimeoffset.tostring.argumentoutofrangeexception/vb/datetimeoffset.tostring.argumentoutofrangeexception1.vb" id="Snippet1":::

Si applica a

ToString(String)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando il formato specificato.

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

Parametri

format
String

Stringa di formato.

Restituisce

String

Rappresentazione di stringa del valore dell'oggetto DateTimeOffset corrente, come specificato da format.

Eccezioni

La lunghezza di format è 1 e non è uno dei caratteri identificatori di formato standard definiti per DateTimeFormatInfo.

-oppure-

format non contiene un modello di formato personalizzato valido.

La data e l'ora non sono comprese nell'intervallo di date supportato dal calendario usato dalle impostazioni cultura correnti.

Esempio

Nell'esempio seguente viene visualizzato un DateTimeOffset oggetto nella console usando ognuno degli identificatori di formato data e ora standard. L'output viene formattato usando le impostazioni cultura 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))

Commenti

Il format parametro deve contenere un singolo carattere di identificatore di formato (vedere Stringhe di formato data e ora standard) o un modello di formato personalizzato (vedere Stringhe di formato data e ora personalizzate) che definisce il formato della stringa restituita. Se format è una stringa null o vuota (""), il valore viene restituito usando il DateTimeOffset formato predefinito.

Nella tabella seguente viene illustrata l'operazione esatta di determinati identificatori di formato quando viene usato con DateTimeOffset, che differisce dal comportamento usato con DateTime.

Identificatore di formato esistente Nuovo comportamento
"K" Progettato per il round trip di una data e dell'ora. Con DateTimeOffset, esegue il mapping a "zzz" (l'offset viene sempre visualizzato con ore e minuti). Si noti che "K" è un identificatore di formato personalizzato; non può essere visualizzato come singolo carattere in format.
"U" Non supportata.
"r" Converte l'oggetto DateTimeOffset in Coordinated Universal Time (UTC) e lo restituisce usando la stringa ddd, dd MMM yyyy HH:mm:ss GMTdi formato personalizzata .
"u" Converte l'oggetto DateTimeOffset in UTC e lo restituisce usando il formato yyyy-MM-dd HH:mm:ssZ.

Gli identificatori di formato data e ora rimanenti si comportano allo stesso modo con il metodo che esegue con il ToString(String) ToString metodo .

Questo metodo usa le informazioni di formattazione derivate dalle impostazioni cultura correnti. Per altre informazioni, vedere CurrentCulture.

Note per i chiamanti

Il ToString(String) metodo restituisce la rappresentazione stringa della data e dell'ora nel calendario usato dalle impostazioni cultura correnti. Se il valore dell'istanza corrente DateTimeOffset è precedente o successivo a MinSupportedDateTime MaxSupportedDateTime, il metodo genera un ArgumentOutOfRangeExceptionoggetto . Nell'esempio seguente viene illustrato questo concetto. Tenta di formattare una data esterna all'intervallo HebrewCalendar della classe quando la cultura corrente è ebraico (Israele).

::code language="csharp" source="~/snippets/csharp/System/DateTimeOffset/ToString/datetimeoffset.tostring.argumentoutofrangeexception3.cs" interactive="try-dotnet" id="Snippet3": ::code language="fsharp" source="~//snippets/fsharp/VS_Snippets_CLR_System/system.datetimeoffset.tostring.argumentoutofrangeexception/fs/datetimeoffset.tostring.argumentoutofrangeexception3.fs" id="Snippet3"::: ::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_ System/system.datetimeoffset.tostring.argumentoutofrangeexception/vb/datetimeoffset.tostring.argumentoutofrangeexception3.vb" id="Snippet3":::

Vedi anche

Si applica a

ToString(String, IFormatProvider)

Converte il valore dell'oggetto DateTimeOffset corrente nella rappresentazione di stringa equivalente, usando il formato specificato e le informazioni sul formato specifiche delle impostazioni cultura indicate.

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

Parametri

format
String

Stringa di formato.

formatProvider
IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura.

Restituisce

String

Rappresentazione di stringa del valore dell'oggetto DateTimeOffset corrente, come specificato da format e provider.

Implementazioni

Eccezioni

La lunghezza di format è 1 e non è uno dei caratteri identificatori di formato standard definiti per DateTimeFormatInfo.

-oppure-

format non contiene un modello di formato personalizzato valido.

La data e l'ora non sono comprese nell'intervallo di date supportato dal calendario usato da formatProvider.

Esempio

Nell'esempio seguente viene usato il ToString(String, IFormatProvider) metodo per visualizzare un oggetto usando una DateTimeOffset stringa di formato personalizzata per diverse impostazioni cultura.

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

Commenti

Il format parametro deve contenere un singolo carattere di identificatore di formato (vedere Stringhe di formato data e ora standard) o un modello di formato personalizzato (vedere Stringhe di formato data e ora personalizzate). Se format è una stringa null o vuota (""), l'oggetto viene restituito usando il DateTimeOffset formato predefinito.

Nella tabella seguente viene illustrata l'operazione esatta di determinati identificatori di formato quando viene usato con DateTimeOffset, che differisce dal comportamento usato con DateTime.

Identificatore di formato esistente Nuovo comportamento
"K" Progettato per il round trip di una data e dell'ora. Con DateTimeOffset, esegue il mapping a "zzz" (l'offset viene sempre visualizzato con ore e minuti). Si noti che "K" è un identificatore di formato personalizzato; non può essere visualizzato come singolo carattere in format.
"U" Non supportata.
"r" Converte l'oggetto DateTimeOffset in Coordinated Universal Time (UTC) e lo restituisce usando la stringa ddd, dd MMM yyyy HH:mm:ss GMTdi formato personalizzata .
"u" Converte il DateTimeOffset valore in UTC e lo restituisce usando il formato yyyy-MM-dd HH:mm:ssZ.

Gli identificatori di formato data e ora rimanenti si comportano allo stesso modo con il metodo che esegue con il ToString(String) ToString metodo .

Il modello che corrisponde agli identificatori di formato standard, nonché i simboli e i nomi dei componenti di data e ora, viene definito dal formatProvider parametro . Il formatProvider parametro può essere uno dei seguenti:

Se formatProvider è null, viene usato l'oggetto DateTimeFormatInfo associato alle impostazioni cultura correnti (vedere CurrentCulture).

Note per i chiamanti

Il ToString(String, IFormatProvider) metodo restituisce la rappresentazione stringa della data e dell'ora nel calendario usato dal formatProvider parametro. Il calendario è definito dalla Calendar proprietà . Se il valore dell'istanza corrente DateTimeOffset è precedente o successivo a MinSupportedDateTime MaxSupportedDateTime, il metodo genera un ArgumentOutOfRangeExceptionoggetto . Nell'esempio seguente viene illustrato questo concetto. Tenta di formattare una data esterna all'intervallo UmAlQuraCalendar della classe.

::code language="csharp" source="~/snippets/csharp/System/DateTimeOffset/ToString/datetimeoffset.tostring.argumentoutofrangeexception4.cs" id="Snippet4"::: ::code language="fsharp" source="~/snippets/fsharp/fsharprp/VS_Snippets_CLR_System/system.datetimeoffset.tostring.argumentoutofrangeexception/fs/datetimeoffset.tostring.argumentoutofrangeexception4.fs" id="Snippet4"::: :code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/ system.datetimeoffset.tostring.argumentoutofrangeexception/vb/datetimeoffset.tostring.argumentoutofrangeexception4.vb" id="Snippet4":::

Vedi anche

Si applica a