DateTimeOffset.ToString Yöntem

Tanım

Geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

Aşırı Yüklemeler

ToString()

Geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

ToString(IFormatProvider)

Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

ToString(String)

Belirtilen biçimi kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

ToString(String, IFormatProvider)

Belirtilen biçim ve kültüre özgü biçim bilgilerini kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

ToString()

Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs

Geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

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

Döndürülenler

Dizenin sonuna eklenen uzaklığı içeren bir DateTimeOffset nesnesinin dize gösterimi.

Özel durumlar

Tarih ve saat, geçerli kültür tarafından kullanılan takvim tarafından desteklenen tarih aralığının dışındadır.

Örnekler

Aşağıdaki örnek, ToString() yöntemine yapılan çağrıları gösterir ve çıkışını geçerli kültürü en-usolan bir sistemde görüntüler.

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

Açıklamalar

Bu yöntemin dönüş değeri, dizenin sonuna eklenen uzaklık ile birlikte bir boşluk içermesi dışında DateTime.ToString() yöntemiyle aynıdır. Başka bir deyişle, çıkışı kısa tarih desenini, uzun zaman desenini ve zzz özel biçim dizesini kullanarak biçimlendirir ve her öğe bir boşlukla önceki öğeden ayrılır. Örneğin, DateTime.ToString() 12.12.2008 18:15:50 pm değerini döndürürse, ToString() Eşgüdümlü Evrensel Saat'in (UTC) sekiz saat gerisinde kalan bir süre için 12.12.2008 18:15:50 -08:00 değerini döndürür.

Bu yöntem, geçerli kültürden türetilen biçimlendirme bilgilerini kullanır. Daha fazla bilgi için bkz. CurrentCulture. ToString yönteminin diğer aşırı yüklemeleri, biçimlendirmesi kullanılacak kültürü belirtmenize ve DateTimeOffset değerinin çıkış desenini tanımlamanıza olanak tanır.

Arayanlara Notlar

ToString() yöntemi, geçerli kültür tarafından kullanılan takvimdeki tarih ve saatin dize gösterimini döndürür. Geçerli DateTimeOffset örneğinin değeri MinSupportedDateTime'den önce veya MaxSupportedDateTime'den daha uzunsa, yöntemi bir ArgumentOutOfRangeExceptionoluşturur. Aşağıdaki örnek bir çizim sağlar. Geçerli kültür Arapça (Suriye) olduğunda HijriCalendar sınıfı aralığının dışında olan bir tarihi biçimlendirmeye çalışır.

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

Şunlara uygulanır

ToString(IFormatProvider)

Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs

Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

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

Parametreler

formatProvider
IFormatProvider

Kültüre özgü biçimlendirme bilgileri sağlayan bir nesne.

Döndürülenler

formatProvidertarafından belirtilen geçerli DateTimeOffset nesnesinin değerinin dize gösterimi.

Özel durumlar

Tarih ve saat, formatProvidertarafından kullanılan takvim tarafından desteklenen tarih aralığının dışındadır.

Örnekler

Aşağıdaki örnek, sabit kültürü ve diğer dört kültürü temsil eden CultureInfo nesneleri kullanan bir DateTimeOffset nesnesi görüntüler.

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

Açıklamalar

Bu yöntemin dönüş değeri, DateTime.ToString yönteminin eşdeğer aşırı yüklemesiyle aynıdır, ancak dizenin sonuna eklenen uzaklığı izleyen bir boşluk içerir. Başka bir deyişle, çıkışı kısa tarih desenini, uzun zaman desenini ve zzz özel biçim dizesini kullanarak biçimlendirir ve her öğe bir boşlukla önceki öğeden ayrılır.

Bu üç öğe biçimi formatProvider parametresi tarafından tanımlanır. formatProvider parametresi aşağıdakilerden biri olabilir:

formatProvider nullise, geçerli kültürle ilişkili DateTimeFormatInfo nesnesi kullanılır (bkz. CurrentCulture).

Arayanlara Notlar

ToString(IFormatProvider) yöntemi, formatProvider parametresi tarafından temsil edilen kültür tarafından kullanılan takvimdeki tarih ve saatin dize gösterimini döndürür. Takvimi Calendar özelliği tarafından tanımlanır. Geçerli DateTimeOffset örneğinin değeri MinSupportedDateTime'den önce veya MaxSupportedDateTime'den daha uzunsa, yöntemi bir ArgumentOutOfRangeExceptionoluşturur. Aşağıdaki örnek bir çizim sağlar. JapaneseCalendar sınıfı aralığının dışında bir tarih biçimlendirmeye çalışır.

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

Şunlara uygulanır

ToString(String)

Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs

Belirtilen biçimi kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

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

Parametreler

format
String

Biçim dizesi.

Döndürülenler

formattarafından belirtilen geçerli DateTimeOffset nesnesinin değerinin dize gösterimi.

Özel durumlar

format uzunluğu birdir ve DateTimeFormatInfoiçin tanımlanan standart biçim tanımlayıcı karakterlerinden biri değildir.

-veya-

format geçerli bir özel biçim deseni içermiyor.

Tarih ve saat, geçerli kültür tarafından kullanılan takvim tarafından desteklenen tarih aralığının dışındadır.

Örnekler

Aşağıdaki örnek, standart tarih ve saat biçimi tanımlayıcılarının her birini kullanarak konsola bir DateTimeOffset nesnesi görüntüler. Çıkış, en-us kültürü kullanılarak biçimlendirilir.

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))

Açıklamalar

parametresi, döndürülen dizenin biçimini tanımlayan tek bir biçim belirtici karakteri (bkz. Standart Tarih ve Saat Biçim Dizeleri) veya özel biçim deseni (bkz.Özel Tarih ve Saat Biçimi Dizeleri ) içermelidir. format null veya boş bir dize ("") ise, DateTimeOffset değeri varsayılan biçim kullanılarak çıkarılır.

Aşağıdaki tabloda, DateTimeile kullanıldığında davranışlarından farklı olan DateTimeOffsetile kullanıldığında belirli biçim tanımlayıcılarının tam işlemi gösterilmektedir.

Var olan biçim tanımlayıcısı Yeni davranış
"K" Tarih ve saate gidiş dönüş yapmak için tasarlanmıştır. DateTimeOffsetile "zzz" ile eşler (uzaklık her zaman saat ve dakika ile görüntülenir). "K"nin özel biçim tanımlayıcısı olduğunu unutmayın; formatiçinde tek karakter olarak görünemez.
"U" Desteklenmez.
"r" DateTimeOffset nesnesini Eşgüdümlü Evrensel Saat'e (UTC) dönüştürür ve ddd, dd MMM yyyy HH:mm:ss GMTözel biçim dizesini kullanarak verir.
"u" DateTimeOffset nesnesini UTC'ye dönüştürür ve yyyy-MM-dd HH:mm:ssZbiçimini kullanarak çıktısını alır.

Kalan standart tarih ve saat biçimi tanımlayıcıları, ToString yönteminde olduğu gibi ToString(String) yöntemiyle aynı şekilde davranır.

Bu yöntem, geçerli kültürden türetilen biçimlendirme bilgilerini kullanır. Daha fazla bilgi için bkz. CurrentCulture.

Arayanlara Notlar

ToString(String) yöntemi, geçerli kültür tarafından kullanılan takvimdeki tarih ve saatin dize gösterimini döndürür. Geçerli DateTimeOffset örneğinin değeri MinSupportedDateTime'den önce veya MaxSupportedDateTime'den daha uzunsa, yöntemi bir ArgumentOutOfRangeExceptionoluşturur. Aşağıdaki örnek bir çizim sağlar. Geçerli kültür İbranice (İsrail) olduğunda HebrewCalendar sınıfı aralığının dışında bir tarih biçimlendirmeye çalışır.

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

Ayrıca bkz.

Şunlara uygulanır

ToString(String, IFormatProvider)

Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs
Kaynak:
DateTimeOffset.cs

Belirtilen biçim ve kültüre özgü biçim bilgilerini kullanarak geçerli DateTimeOffset nesnesinin değerini eşdeğer dize gösterimine dönüştürür.

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

Parametreler

format
String

Biçim dizesi.

formatProvider
IFormatProvider

Kültüre özgü biçimlendirme bilgileri sağlayan bir nesne.

Döndürülenler

format ve formatProvidertarafından belirtilen geçerli DateTimeOffset nesnesinin değerinin dize gösterimi.

Uygulamalar

Özel durumlar

format uzunluğu birdir ve DateTimeFormatInfoiçin tanımlanan standart biçim tanımlayıcı karakterlerinden biri değildir.

-veya-

format geçerli bir özel biçim deseni içermiyor.

Tarih ve saat, formatProvidertarafından kullanılan takvim tarafından desteklenen tarih aralığının dışındadır.

Örnekler

Aşağıdaki örnek, birkaç farklı kültür için özel biçim dizesi kullanarak bir DateTimeOffset nesnesi görüntülemek için ToString(String, IFormatProvider) yöntemini kullanır.

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

Açıklamalar

parametresi tek biçim tanımlayıcı karakteri (bkz. Standart Tarih ve Saat Biçim Dizeleri) veya özel biçim deseni içermelidir (bkz. Özel Tarih ve Saat Biçim Dizeleri). format null veya boş bir dize ("") ise, DateTimeOffset nesnesi varsayılan biçim kullanılarak çıkarılır.

Aşağıdaki tabloda, DateTimeile kullanıldığında davranışlarından farklı olan DateTimeOffsetile kullanıldığında belirli biçim tanımlayıcılarının tam işlemi gösterilmektedir.

Var olan biçim tanımlayıcısı Yeni davranış
"K" Tarih ve saate gidiş dönüş yapmak için tasarlanmıştır. DateTimeOffsetile "zzz" ile eşler (uzaklık her zaman saat ve dakika ile görüntülenir). "K"nin özel biçim tanımlayıcısı olduğunu unutmayın; formatiçinde tek karakter olarak görünemez.
"U" Desteklenmez.
"r" DateTimeOffset nesnesini Eşgüdümlü Evrensel Saat'e (UTC) dönüştürür ve ddd, dd MMM yyyy HH:mm:ss GMTözel biçim dizesini kullanarak verir.
"u" DateTimeOffset değerini UTC'ye dönüştürür ve yyyy-MM-dd HH:mm:ssZbiçimini kullanarak verir.

Kalan standart tarih ve saat biçimi tanımlayıcıları, ToString yönteminde olduğu gibi ToString(String) yöntemiyle aynı şekilde davranır.

Standart biçim tanımlayıcılarının yanı sıra tarih ve saat bileşenlerinin sembollerine ve adlarına karşılık gelen desen, formatProvider parametresi tarafından tanımlanır. formatProvider parametresi aşağıdakilerden biri olabilir:

formatProvider nullise, geçerli kültürle ilişkili DateTimeFormatInfo nesnesi kullanılır (bkz. CurrentCulture).

Arayanlara Notlar

ToString(String, IFormatProvider) yöntemi, formatProvider parametresi tarafından kullanılan takvimdeki tarih ve saatin dize gösterimini döndürür. Takvimi Calendar özelliği tarafından tanımlanır. Geçerli DateTimeOffset örneğinin değeri MinSupportedDateTime'den önce veya MaxSupportedDateTime'den daha uzunsa, yöntemi bir ArgumentOutOfRangeExceptionoluşturur. Aşağıdaki örnek bir çizim sağlar. UmAlQuraCalendar sınıfı aralığının dışında bir tarih biçimlendirmeye çalışır.

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

Ayrıca bkz.

Şunlara uygulanır