DateTime.ToString Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara.
Overload
ToString(IFormatProvider) |
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan informasi format khusus budaya yang ditentukan. |
ToString(String) |
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan format yang ditentukan dan konvensi pemformatan budaya saat ini. |
ToString() |
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan konvensi pemformatan budaya saat ini. |
ToString(String, IFormatProvider) |
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan format yang ditentukan dan informasi format khusus budaya. |
ToString(IFormatProvider)
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan informasi format khusus budaya yang ditentukan.
public:
virtual System::String ^ ToString(IFormatProvider ^ provider);
public:
System::String ^ ToString(IFormatProvider ^ provider);
public string ToString (IFormatProvider provider);
public string ToString (IFormatProvider? provider);
override this.ToString : IFormatProvider -> string
Public Function ToString (provider As IFormatProvider) As String
Parameter
- provider
- IFormatProvider
Objek yang memasok informasi pemformatan khusus budaya.
Mengembalikan
Representasi string nilai objek saat ini DateTime seperti yang ditentukan oleh provider
.
Penerapan
Pengecualian
Tanggal dan waktu berada di luar rentang tanggal yang didukung oleh kalender yang digunakan oleh provider
.
Contoh
Contoh berikut menampilkan representasi string tanggal dan waktu menggunakan CultureInfo objek yang mewakili lima budaya yang berbeda.
using System;
using System.Globalization;
public class ToStringExample3
{
public static void Main2()
{
CultureInfo[] cultures = new CultureInfo[] {CultureInfo.InvariantCulture,
new CultureInfo("en-us"),
new CultureInfo("fr-fr"),
new CultureInfo("de-DE"),
new CultureInfo("es-ES"),
new CultureInfo("ja-JP")};
DateTime thisDate = new DateTime(2009, 5, 1, 9, 0, 0);
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/2009 09:00:00
// In en-US, 5/1/2009 9:00:00 AM
// In fr-FR, 01/05/2009 09:00:00
// In de-DE, 01.05.2009 09:00:00
// In es-ES, 01/05/2009 9:00:00
// In ja-JP, 2009/05/01 9:00:00
open System
open System.Globalization
let cultures =
[ CultureInfo.InvariantCulture
CultureInfo "en-us"
CultureInfo "fr-fr"
CultureInfo "de-DE"
CultureInfo "es-ES"
CultureInfo "ja-JP" ]
let thisDate = DateTime(2009, 5, 1, 9, 0, 0)
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/2009 09:00:00
// In en-US, 5/1/2009 9:00:00 AM
// In fr-FR, 01/05/2009 09:00:00
// In de-DE, 01.05.2009 09:00:00
// In es-ES, 01/05/2009 9:00:00
// In ja-JP, 2009/05/01 9:00:00
Imports System.Globalization
Module Example4
Public Sub Main4()
Dim cultures() As CultureInfo = {CultureInfo.InvariantCulture,
New CultureInfo("en-us"),
New CultureInfo("fr-fr"),
New CultureInfo("de-DE"),
New CultureInfo("es-ES"),
New CultureInfo("ja-JP")}
Dim thisDate As Date = #5/1/2009 9:00AM#
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
End Sub
End Module
' The example produces the following output:
' In Invariant Language (Invariant Country), 05/01/2009 09:00:00
' In en-US, 5/1/2009 9:00:00 AM
' In fr-FR, 01/05/2009 09:00:00
' In de-DE, 01.05.2009 09:00:00
' In es-ES, 01/05/2009 9:00:00
' In ja-JP, 2009/05/01 9:00:00
Keterangan
Nilai objek saat ini DateTime diformat menggunakan penentu format tanggal dan waktu umum ('G'), yang memformat output menggunakan pola tanggal pendek dan pola waktu yang lama.
Format pola tanggal pendek dan waktu panjang ditentukan oleh provider
parameter . Parameter provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang mewakili budaya yang konvensi pemformatannya akan tercermin dalam string yang dikembalikan. Objek DateTimeFormatInfo yang CultureInfo.DateTimeFormat dikembalikan oleh properti menentukan pemformatan string yang dikembalikan.
Objek DateTimeFormatInfo yang menentukan format data tanggal dan waktu.
Objek kustom yang mengimplementasikan IFormatProvider antarmuka. Metodenya GetFormat mengembalikan DateTimeFormatInfo objek yang menyediakan informasi pemformatan.
Jika provider
adalah null
, objek yang DateTimeFormatInfo terkait dengan budaya saat ini digunakan. Untuk informasi selengkapnya, lihat CultureInfo.CurrentCulture.
Catatan Bagi Pemanggil
Metode mengembalikan ToString(IFormatProvider) representasi string tanggal dan waktu dalam kalender yang digunakan oleh budaya yang provider
diwakili oleh parameter . Kalendernya ditentukan oleh Calendar properti . Jika nilai instans saat ini DateTime lebih awal dari MinSupportedDateTime atau lebih baru dari MaxSupportedDateTime, metode akan melempar ArgumentOutOfRangeException. Contoh berikut memberikan ilustrasi. Ini mencoba memformat tanggal yang berada di luar rentang JapaneseCalendar kelas.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
CultureInfo jaJP = new CultureInfo("ja-JP");
jaJP.DateTimeFormat.Calendar = new JapaneseCalendar();
DateTime date1 = new DateTime(1867, 1, 1);
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 = DateTime(1867, 1, 1)
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 Date = #01/01/1867#
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
Lihat juga
Berlaku untuk
ToString(String)
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan format yang ditentukan dan konvensi pemformatan budaya saat ini.
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
Parameter
- format
- String
String format tanggal dan waktu standar atau kustom.
Mengembalikan
Representasi string nilai objek saat ini DateTime seperti yang ditentukan oleh format
.
Pengecualian
Panjangnya format
adalah 1, dan bukan salah satu karakter penentu format yang ditentukan untuk DateTimeFormatInfo.
-atau-
format
tidak berisi pola format kustom yang valid.
Tanggal dan waktu berada di luar rentang tanggal yang didukung oleh kalender yang digunakan oleh budaya saat ini.
Contoh
Contoh berikut menggunakan masing-masing string format tanggal dan waktu standar dan pilihan string format tanggal dan waktu kustom untuk menampilkan representasi DateTime string nilai. Budaya utas saat ini misalnya adalah en-US.
using System;
public class DateToStringExample2
{
public static void Main()
{
DateTime dateValue = new DateTime(2008, 6, 15, 21, 15, 07);
// Create an array of standard format strings.
string[] standardFmts = {"d", "D", "f", "F", "g", "G", "m", "o",
"R", "s", "t", "T", "u", "U", "y"};
// Output date and time using each standard format string.
foreach (string standardFmt in standardFmts)
Console.WriteLine("{0}: {1}", standardFmt,
dateValue.ToString(standardFmt));
Console.WriteLine();
// Create an array of some custom format strings.
string[] customFmts = {"h:mm:ss.ff t", "d MMM yyyy", "HH:mm:ss.f",
"dd MMM HH:mm:ss", @"\Mon\t\h\: M", "HH:mm:ss.ffffzzz" };
// Output date and time using each custom format string.
foreach (string customFmt in customFmts)
Console.WriteLine("'{0}': {1}", customFmt,
dateValue.ToString(customFmt));
}
}
// This example displays the following output to the console:
// d: 6/15/2008
// D: Sunday, June 15, 2008
// f: Sunday, June 15, 2008 9:15 PM
// F: Sunday, June 15, 2008 9:15:07 PM
// g: 6/15/2008 9:15 PM
// G: 6/15/2008 9:15:07 PM
// m: June 15
// o: 2008-06-15T21:15:07.0000000
// R: Sun, 15 Jun 2008 21:15:07 GMT
// s: 2008-06-15T21:15:07
// t: 9:15 PM
// T: 9:15:07 PM
// u: 2008-06-15 21:15:07Z
// U: Monday, June 16, 2008 4:15:07 AM
// y: June, 2008
//
// 'h:mm:ss.ff t': 9:15:07.00 P
// 'd MMM yyyy': 15 Jun 2008
// 'HH:mm:ss.f': 21:15:07.0
// 'dd MMM HH:mm:ss': 15 Jun 21:15:07
// '\Mon\t\h\: M': Month: 6
// 'HH:mm:ss.ffffzzz': 21:15:07.0000-07:00
open System
let dateValue = DateTime(2008, 6, 15, 21, 15, 07)
// Create a list of standard format strings.
let standardFmts =
[ "d"; "D"; "f"; "F"; "g"; "G"; "m"; "o"
"R"; "s"; "t"; "T"; "u"; "U"; "y" ]
// Output date and time using each standard format string.
for standardFmt in standardFmts do
printfn $"{standardFmt}: {dateValue.ToString standardFmt}"
printfn ""
// Create a list of some custom format strings.
let customFmts =
[ "h:mm:ss.ff t"; "d MMM yyyy"; "HH:mm:ss.f"; "dd MMM HH:mm:ss"; @"\Mon\t\h\: M"; "HH:mm:ss.ffffzzz" ]
// Output date and time using each custom format string.
for customFmt in customFmts do
printfn $"'{customFmt}': {dateValue.ToString customFmt}"
// This example displays the following output to the console:
// d: 6/15/2008
// D: Sunday, June 15, 2008
// f: Sunday, June 15, 2008 9:15 PM
// F: Sunday, June 15, 2008 9:15:07 PM
// g: 6/15/2008 9:15 PM
// G: 6/15/2008 9:15:07 PM
// m: June 15
// o: 2008-06-15T21:15:07.0000000
// R: Sun, 15 Jun 2008 21:15:07 GMT
// s: 2008-06-15T21:15:07
// t: 9:15 PM
// T: 9:15:07 PM
// u: 2008-06-15 21:15:07Z
// U: Monday, June 16, 2008 4:15:07 AM
// y: June, 2008
//
// 'h:mm:ss.ff t': 9:15:07.00 P
// 'd MMM yyyy': 15 Jun 2008
// 'HH:mm:ss.f': 21:15:07.0
// 'dd MMM HH:mm:ss': 15 Jun 21:15:07
// '\Mon\t\h\: M': Month: 6
// 'HH:mm:ss.ffffzzz': 21:15:07.0000-07:00
Module DateToStringExample2
Public Sub Main2()
Dim dateValue As Date = #6/15/2008 9:15:07PM#
' Create an array of standard format strings.
Dim standardFmts() As String = {"d", "D", "f", "F", "g", "G",
"m", "o", "R", "s", "t", "T",
"u", "U", "y"}
' Output date and time using each standard format string.
For Each standardFmt As String In standardFmts
Console.WriteLine("{0}: {1}", standardFmt,
dateValue.ToString(standardFmt))
Next
Console.WriteLine()
' Create an array of some custom format strings.
Dim customFmts() As String = {"h:mm:ss.ff t", "d MMM yyyy", "HH:mm:ss.f",
"dd MMM HH:mm:ss", "\Mon\t\h\: M", "HH:mm:ss.ffffzzz"}
' Output date and time using each custom format string.
For Each customFmt As String In customFmts
Console.WriteLine("'{0}': {1}", customFmt,
dateValue.ToString(customFmt))
Next
End Sub
End Module
' This example displays the following output to the console:
' d: 6/15/2008
' D: Sunday, June 15, 2008
' f: Sunday, June 15, 2008 9:15 PM
' F: Sunday, June 15, 2008 9:15:07 PM
' g: 6/15/2008 9:15 PM
' G: 6/15/2008 9:15:07 PM
' m: June 15
' o: 2008-06-15T21:15:07.0000000
' R: Sun, 15 Jun 2008 21:15:07 GMT
' s: 2008-06-15T21:15:07
' t: 9:15 PM
' T: 9:15:07 PM
' u: 2008-06-15 21:15:07Z
' U: Monday, June 16, 2008 4:15:07 AM
' y: June, 2008
'
' 'h:mm:ss.ff t': 9:15:07.00 P
' 'd MMM yyyy': 15 Jun 2008
' 'HH:mm:ss.f': 21:15:07.0
' 'dd MMM HH:mm:ss': 15 Jun 21:15:07
' '\Mon\t\h\: M': Month: 6
' 'HH:mm:ss.ffffzzz': 21:15:07.0000-07:00
Keterangan
Metode mengembalikan ToString(String) representasi string dari nilai tanggal dan waktu dalam format tertentu yang menggunakan konvensi pemformatan budaya saat ini; untuk informasi selengkapnya, lihat CultureInfo.CurrentCulture.
Parameter format
harus berisi karakter penentu format tunggal (lihat String Format Tanggal dan Waktu Standar) atau pola format kustom (lihat String Format Tanggal dan Waktu Kustom) yang menentukan format string yang dikembalikan. Jika format
adalah null
atau string kosong, penentu format umum, 'G', digunakan.
Beberapa kegunaan metode ini meliputi:
Mendapatkan string yang menampilkan tanggal dan waktu dalam format tanggal dan waktu singkat budaya saat ini. Untuk melakukan ini, Anda menggunakan penentu format "G".
Mendapatkan string yang hanya berisi bulan dan tahun. Untuk melakukan ini, Anda menggunakan string format "MM/yyyy". String format menggunakan pemisah tanggal budaya saat ini.
Mendapatkan string yang berisi tanggal dan waktu dalam format tertentu. Misalnya, string format "MM/dd/yyyyHH:mm" menampilkan string tanggal dan waktu dalam format tetap seperti "19//03//2013 18:06". String format menggunakan "/" sebagai pemisah tanggal tetap terlepas dari pengaturan khusus budaya.
Mendapatkan tanggal dalam format ringkas yang dapat digunakan untuk menserialisasikan string tanggal. Misalnya, string format "yyyyMMdd" menampilkan tahun empat digit diikuti oleh bulan dua digit dan hari dua digit tanpa pemisah tanggal.
Contoh berikut menggunakan ketiga string format ini untuk menampilkan nilai tanggal dan waktu dengan menggunakan konvensi budaya en-US dan fr-FR.
using System;
using System.Globalization;
public class ToStringExample5
{
public static void Main3()
{
string[] formats = { "G", "MM/yyyy", @"MM\/dd\/yyyy HH:mm", "yyyyMMdd" };
string[] cultureNames = { "en-US", "fr-FR" };
DateTime date = new DateTime(2015, 8, 18, 13, 31, 17);
foreach (var cultureName in cultureNames)
{
var culture = new CultureInfo(cultureName);
CultureInfo.CurrentCulture = culture;
Console.WriteLine(culture.NativeName);
foreach (var format in formats)
Console.WriteLine($" {format}: {date.ToString(format)}");
Console.WriteLine();
}
}
}
// The example displays the following output:
// English (United States)
// G: 8/18/2015 1:31:17 PM
// MM/yyyy: 08/2015
// MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
// yyyyMMdd: 20150818
//
// français (France)
// G: 18/08/2015 13:31:17
// MM/yyyy: 08/2015
// MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
// yyyyMMdd: 20150818
open System
open System.Globalization
let formats = [ "G"; "MM/yyyy"; @"MM\/dd\/yyyy HH:mm"; "yyyyMMdd" ]
let cultureNames = [ "en-US"; "fr-FR" ]
let date = DateTime(2015, 8, 18, 13, 31, 17)
for cultureName in cultureNames do
let culture = CultureInfo cultureName
CultureInfo.CurrentCulture <- culture
printfn $"{culture.NativeName}"
for format in formats do
printfn $" {format}: {date.ToString format}"
printfn ""
// The example displays the following output:
// English (United States)
// G: 8/18/2015 1:31:17 PM
// MM/yyyy: 08/2015
// MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
// yyyyMMdd: 20150818
//
// français (France)
// G: 18/08/2015 13:31:17
// MM/yyyy: 08/2015
// MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
// yyyyMMdd: 20150818
Imports System.Globalization
Imports System.Threading
Public Module Example5
Public Sub Main5()
Dim formats() As String = {"G", "MM/yyyy", "MM\/dd\/yyyy HH:mm",
"yyyyMMdd"}
Dim cultureNames() As String = {"en-US", "fr-FR"}
Dim dat As New DateTime(2015, 8, 18, 13, 31, 17)
For Each cultureName In cultureNames
Dim culture As New CultureInfo(cultureName)
CultureInfo.CurrentCulture = culture
Console.WriteLine(culture.NativeName)
For Each fmt In formats
Console.WriteLine(" {0}: {1}", fmt,
dat.ToString(fmt))
Next
Console.WriteLine()
Next
End Sub
End Module
' The example displays the following output:
' English (United States)
' G: 8/18/2015 1:31:17 PM
' MM/yyyy: 08/2015
' MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
' yyyyMMdd: 20150818
'
' français (France)
' G: 18/08/2015 13:31:17
' MM/yyyy: 08/2015
' MM\/dd\/yyyy HH:mm: 08/18/2015 13:31
' yyyyMMdd: 20150818
Catatan Bagi Pemanggil
Metode mengembalikan ToString(String) representasi string tanggal dan waktu dalam kalender yang digunakan oleh budaya saat ini. Jika nilai instans saat ini DateTime lebih awal dari MinSupportedDateTime atau lebih baru dari MaxSupportedDateTime, metode akan melempar ArgumentOutOfRangeException. Contoh berikut memberikan ilustrasi. Ini mencoba memformat tanggal yang berada di luar rentang HebrewCalendar kelas ketika budaya saat ini adalah Ibrani (Israel).
using System;
using System.Globalization;
using System.Threading;
public class Example3
{
public static void Main()
{
DateTime date1 = new DateTime(1550, 7, 21);
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 = DateTime(1550, 7, 21)
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 Date = #7/21/1550#
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
Lihat juga
- DateTimeFormatInfo
- CultureInfo
- Tipe Pemformatan di .NET
- String format tanggal dan waktu kustom
- String Format Tanggal dan Waktu Kustom
Berlaku untuk
ToString()
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan konvensi pemformatan budaya saat ini.
public:
override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Mengembalikan
Representasi string dari nilai objek saat ini DateTime .
Pengecualian
Tanggal dan waktu berada di luar rentang tanggal yang didukung oleh kalender yang digunakan oleh budaya saat ini.
Contoh
Contoh berikut menggambarkan bagaimana representasi string dari nilai yang DateTime dikembalikan oleh ToString() metode tergantung pada budaya utas saat ini. Ini mengubah budaya saat ini menjadi en-US, fr-FR, dan ja-JP, dan dalam setiap kasus memanggil ToString() metode untuk mengembalikan representasi string dari nilai tanggal dan waktu menggunakan budaya tersebut.
using System;
using System.Globalization;
public class ToStringExample1
{
public static void Main()
{
CultureInfo currentCulture = CultureInfo.CurrentCulture;
DateTime exampleDate = new DateTime(2021, 5, 1, 18, 32, 6);
// Change the current culture to en-US and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("en-US");
Console.WriteLine(exampleDate.ToString());
// Change the current culture to fr-FR and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("fr-FR");
Console.WriteLine(exampleDate.ToString());
// Change the current culture to ja-JP and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("ja-JP");
Console.WriteLine(exampleDate.ToString());
// Restore the original culture
CultureInfo.CurrentCulture = currentCulture;
}
}
// The example displays the following output to the console:
// 5/1/2021 6:32:06 PM
// 01/05/2021 18:32:06
// 2021/05/01 18:32:06
open System
open System.Globalization
let currentCulture = CultureInfo.CurrentCulture
let exampleDate = DateTime(2021, 5, 1, 18, 32, 6)
// Change the current culture to en-US and display the date.
CultureInfo.CurrentCulture <- CultureInfo.GetCultureInfo "en-US"
printfn $"{exampleDate.ToString()}"
// Change the current culture to fr-FR and display the date.
CultureInfo.CurrentCulture <- CultureInfo.GetCultureInfo "fr-FR"
printfn $"{exampleDate.ToString()}"
// Change the current culture to ja-JP and display the date.
CultureInfo.CurrentCulture <- CultureInfo.GetCultureInfo "ja-JP"
printfn $"{exampleDate.ToString()}"
// Restore the original culture
CultureInfo.CurrentCulture <- currentCulture
// The example displays the following output to the console:
// 5/1/2021 6:32:06 PM
// 01/05/2021 18:32:06
// 2021/05/01 18:32:06
Imports System.Globalization
Module DateToStringExample
Public Sub Main()
Dim currentCulture As CultureInfo = CultureInfo.CurrentCulture
Dim exampleDate As Date = #05/01/2021 6:32:06PM#
' Change the current culture to en-US and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("en-US")
Console.WriteLine(exampleDate.ToString())
' Change the current culture to fr-FR and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("fr-FR")
Console.WriteLine(exampleDate.ToString())
' Change the current culture to ja-JP and display the date.
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("ja-JP")
Console.WriteLine(exampleDate.ToString())
' Restore the original culture
CultureInfo.CurrentCulture = currentCulture
End Sub
End Module
' The example displays the following output to the console:
' 5/1/2021 6:32:06 PM
' 01/05/2021 18:32:06
' 2021/05/01 18:32:06
Keterangan
Nilai objek saat ini DateTime diformat menggunakan penentu format tanggal dan waktu umum ('G'). Untuk memformatnya menggunakan penentu format tanggal dan waktu tertentu, panggil ToString(String) metode . Untuk memformatnya menggunakan penentu format tanggal dan waktu umum ('G') untuk budaya tertentu, panggil ToString(IFormatProvider) metode . Untuk memformatnya menggunakan penentu format tanggal dan waktu tertentu dan konvensi budaya tertentu, panggil ToString(String, IFormatProvider) metode .
Metode ini menggunakan informasi pemformatan yang berasal dari budaya saat ini. Secara khusus, ini menggabungkan string format kustom yang dikembalikan oleh ShortDatePattern properti dan LongTimePattern objek yang DateTimeFormatInfo dikembalikan oleh Thread.CurrentThread.CurrentCulture.DateTimeFormat
properti . Untuk informasi selengkapnya, lihat CultureInfo.CurrentCulture. Kelebihan beban ToString metode lainnya memungkinkan Anda menentukan budaya yang pemformatannya digunakan dan untuk menentukan pola DateTime output nilai.
Catatan Bagi Pemanggil
Metode mengembalikan ToString() representasi string tanggal dan waktu dalam kalender yang digunakan oleh budaya saat ini. Jika nilai instans saat ini DateTime lebih awal dari MinSupportedDateTime atau lebih baru dari MaxSupportedDateTime, metode akan melempar ArgumentOutOfRangeException. Contoh berikut memberikan ilustrasi. Ini mencoba memformat tanggal yang berada di luar rentang HijriCalendar kelas ketika budaya saat ini adalah Arab (Suriah).
using System;
using System.Globalization;
using System.Threading;
public class Example2
{
public static void Main()
{
DateTime date1 = new DateTime(550, 1, 1);
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 = DateTime(550, 1, 1)
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 Date = #1/1/550#
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} 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))
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
Lihat juga
Berlaku untuk
ToString(String, IFormatProvider)
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
- Sumber:
- DateTime.cs
Mengonversi nilai objek saat ini DateTime ke representasi string yang setara menggunakan format yang ditentukan dan informasi format khusus budaya.
public:
virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ provider);
public string ToString (string format, IFormatProvider provider);
public string ToString (string? format, IFormatProvider? provider);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, provider As IFormatProvider) As String
Parameter
- format
- String
String format tanggal dan waktu standar atau kustom.
- provider
- IFormatProvider
Objek yang memasok informasi pemformatan khusus budaya.
Mengembalikan
Representasi string nilai objek saat ini DateTime seperti yang ditentukan oleh format
dan provider
.
Penerapan
Pengecualian
Panjangnya format
adalah 1, dan bukan salah satu karakter penentu format yang ditentukan untuk DateTimeFormatInfo.
-atau-
format
tidak berisi pola format kustom yang valid.
Tanggal dan waktu berada di luar rentang tanggal yang didukung oleh kalender yang digunakan oleh provider
.
Contoh
Contoh berikut menggunakan masing-masing string format waktu tanggal standar untuk menampilkan representasi string tanggal dan waktu untuk empat budaya yang berbeda.
using System;
using System.Globalization;
public class ToStringExample4
{
public static void Main1()
{
// Create an array of all supported standard date and time format specifiers.
string[] formats = {"d", "D", "f", "F", "g", "G", "m", "o", "r",
"s", "t", "T", "u", "U", "Y"};
// Create an array of four cultures.
CultureInfo[] cultures = {CultureInfo.GetCultureInfo("de-DE"),
CultureInfo.GetCultureInfo("en-US"),
CultureInfo.GetCultureInfo("es-ES"),
CultureInfo.GetCultureInfo("fr-FR")};
// Define date to be displayed.
DateTime dateToDisplay = new DateTime(2008, 10, 31, 17, 4, 32);
// Iterate each standard format specifier.
foreach (string formatSpecifier in formats)
{
foreach (CultureInfo culture in cultures)
Console.WriteLine("{0} Format Specifier {1, 10} Culture {2, 40}",
formatSpecifier, culture.Name,
dateToDisplay.ToString(formatSpecifier, culture));
Console.WriteLine();
}
}
}
// The example displays the following output:
// d Format Specifier de-DE Culture 31.10.2008
// d Format Specifier en-US Culture 10/31/2008
// d Format Specifier es-ES Culture 31/10/2008
// d Format Specifier fr-FR Culture 31/10/2008
//
// D Format Specifier de-DE Culture Freitag, 31. Oktober 2008
// D Format Specifier en-US Culture Friday, October 31, 2008
// D Format Specifier es-ES Culture viernes, 31 de octubre de 2008
// D Format Specifier fr-FR Culture vendredi 31 octobre 2008
//
// f Format Specifier de-DE Culture Freitag, 31. Oktober 2008 17:04
// f Format Specifier en-US Culture Friday, October 31, 2008 5:04 PM
// f Format Specifier es-ES Culture viernes, 31 de octubre de 2008 17:04
// f Format Specifier fr-FR Culture vendredi 31 octobre 2008 17:04
//
// F Format Specifier de-DE Culture Freitag, 31. Oktober 2008 17:04:32
// F Format Specifier en-US Culture Friday, October 31, 2008 5:04:32 PM
// F Format Specifier es-ES Culture viernes, 31 de octubre de 2008 17:04:32
// F Format Specifier fr-FR Culture vendredi 31 octobre 2008 17:04:32
//
// g Format Specifier de-DE Culture 31.10.2008 17:04
// g Format Specifier en-US Culture 10/31/2008 5:04 PM
// g Format Specifier es-ES Culture 31/10/2008 17:04
// g Format Specifier fr-FR Culture 31/10/2008 17:04
//
// G Format Specifier de-DE Culture 31.10.2008 17:04:32
// G Format Specifier en-US Culture 10/31/2008 5:04:32 PM
// G Format Specifier es-ES Culture 31/10/2008 17:04:32
// G Format Specifier fr-FR Culture 31/10/2008 17:04:32
//
// m Format Specifier de-DE Culture 31. Oktober
// m Format Specifier en-US Culture October 31
// m Format Specifier es-ES Culture 31 de octubre
// m Format Specifier fr-FR Culture 31 octobre
//
// o Format Specifier de-DE Culture 2008-10-31T17:04:32.0000000
// o Format Specifier en-US Culture 2008-10-31T17:04:32.0000000
// o Format Specifier es-ES Culture 2008-10-31T17:04:32.0000000
// o Format Specifier fr-FR Culture 2008-10-31T17:04:32.0000000
//
// r Format Specifier de-DE Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier en-US Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier es-ES Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier fr-FR Culture Fri, 31 Oct 2008 17:04:32 GMT
//
// s Format Specifier de-DE Culture 2008-10-31T17:04:32
// s Format Specifier en-US Culture 2008-10-31T17:04:32
// s Format Specifier es-ES Culture 2008-10-31T17:04:32
// s Format Specifier fr-FR Culture 2008-10-31T17:04:32
//
// t Format Specifier de-DE Culture 17:04
// t Format Specifier en-US Culture 5:04 PM
// t Format Specifier es-ES Culture 17:04
// t Format Specifier fr-FR Culture 17:04
//
// T Format Specifier de-DE Culture 17:04:32
// T Format Specifier en-US Culture 5:04:32 PM
// T Format Specifier es-ES Culture 17:04:32
// T Format Specifier fr-FR Culture 17:04:32
//
// u Format Specifier de-DE Culture 2008-10-31 17:04:32Z
// u Format Specifier en-US Culture 2008-10-31 17:04:32Z
// u Format Specifier es-ES Culture 2008-10-31 17:04:32Z
// u Format Specifier fr-FR Culture 2008-10-31 17:04:32Z
//
// U Format Specifier de-DE Culture Freitag, 31. Oktober 2008 09:04:32
// U Format Specifier en-US Culture Friday, October 31, 2008 9:04:32 AM
// U Format Specifier es-ES Culture viernes, 31 de octubre de 2008 9:04:32
// U Format Specifier fr-FR Culture vendredi 31 octobre 2008 09:04:32
//
// Y Format Specifier de-DE Culture Oktober 2008
// Y Format Specifier en-US Culture October 2008
// Y Format Specifier es-ES Culture octubre de 2008
// Y Format Specifier fr-FR Culture octobre 2008
open System
open System.Globalization
// Create a list of all supported standard date and time format specifiers.
let formats =
[ "d"; "D"; "f"; "F"; "g"; "G"; "m"; "o"
"r"; "s"; "t"; "T"; "u"; "U"; "Y" ]
// Create a list of four cultures.
let cultures =
[ CultureInfo.GetCultureInfo "de-DE"
CultureInfo.GetCultureInfo "en-US"
CultureInfo.GetCultureInfo "es-ES"
CultureInfo.GetCultureInfo "fr-FR" ]
// Define date to be displayed.
let dateToDisplay = DateTime(2008, 10, 31, 17, 4, 32)
// Iterate each standard format specifier.
for formatSpecifier in formats do
for culture in cultures do
printfn $"{formatSpecifier} Format Specifier {culture.Name, 10} Culture {dateToDisplay.ToString(formatSpecifier, culture), 40}"
printfn ""
// The example displays the following output:
// d Format Specifier de-DE Culture 31.10.2008
// d Format Specifier en-US Culture 10/31/2008
// d Format Specifier es-ES Culture 31/10/2008
// d Format Specifier fr-FR Culture 31/10/2008
//
// D Format Specifier de-DE Culture Freitag, 31. Oktober 2008
// D Format Specifier en-US Culture Friday, October 31, 2008
// D Format Specifier es-ES Culture viernes, 31 de octubre de 2008
// D Format Specifier fr-FR Culture vendredi 31 octobre 2008
//
// f Format Specifier de-DE Culture Freitag, 31. Oktober 2008 17:04
// f Format Specifier en-US Culture Friday, October 31, 2008 5:04 PM
// f Format Specifier es-ES Culture viernes, 31 de octubre de 2008 17:04
// f Format Specifier fr-FR Culture vendredi 31 octobre 2008 17:04
//
// F Format Specifier de-DE Culture Freitag, 31. Oktober 2008 17:04:32
// F Format Specifier en-US Culture Friday, October 31, 2008 5:04:32 PM
// F Format Specifier es-ES Culture viernes, 31 de octubre de 2008 17:04:32
// F Format Specifier fr-FR Culture vendredi 31 octobre 2008 17:04:32
//
// g Format Specifier de-DE Culture 31.10.2008 17:04
// g Format Specifier en-US Culture 10/31/2008 5:04 PM
// g Format Specifier es-ES Culture 31/10/2008 17:04
// g Format Specifier fr-FR Culture 31/10/2008 17:04
//
// G Format Specifier de-DE Culture 31.10.2008 17:04:32
// G Format Specifier en-US Culture 10/31/2008 5:04:32 PM
// G Format Specifier es-ES Culture 31/10/2008 17:04:32
// G Format Specifier fr-FR Culture 31/10/2008 17:04:32
//
// m Format Specifier de-DE Culture 31. Oktober
// m Format Specifier en-US Culture October 31
// m Format Specifier es-ES Culture 31 de octubre
// m Format Specifier fr-FR Culture 31 octobre
//
// o Format Specifier de-DE Culture 2008-10-31T17:04:32.0000000
// o Format Specifier en-US Culture 2008-10-31T17:04:32.0000000
// o Format Specifier es-ES Culture 2008-10-31T17:04:32.0000000
// o Format Specifier fr-FR Culture 2008-10-31T17:04:32.0000000
//
// r Format Specifier de-DE Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier en-US Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier es-ES Culture Fri, 31 Oct 2008 17:04:32 GMT
// r Format Specifier fr-FR Culture Fri, 31 Oct 2008 17:04:32 GMT
//
// s Format Specifier de-DE Culture 2008-10-31T17:04:32
// s Format Specifier en-US Culture 2008-10-31T17:04:32
// s Format Specifier es-ES Culture 2008-10-31T17:04:32
// s Format Specifier fr-FR Culture 2008-10-31T17:04:32
//
// t Format Specifier de-DE Culture 17:04
// t Format Specifier en-US Culture 5:04 PM
// t Format Specifier es-ES Culture 17:04
// t Format Specifier fr-FR Culture 17:04
//
// T Format Specifier de-DE Culture 17:04:32
// T Format Specifier en-US Culture 5:04:32 PM
// T Format Specifier es-ES Culture 17:04:32
// T Format Specifier fr-FR Culture 17:04:32
//
// u Format Specifier de-DE Culture 2008-10-31 17:04:32Z
// u Format Specifier en-US Culture 2008-10-31 17:04:32Z
// u Format Specifier es-ES Culture 2008-10-31 17:04:32Z
// u Format Specifier fr-FR Culture 2008-10-31 17:04:32Z
//
// U Format Specifier de-DE Culture Freitag, 31. Oktober 2008 09:04:32
// U Format Specifier en-US Culture Friday, October 31, 2008 9:04:32 AM
// U Format Specifier es-ES Culture viernes, 31 de octubre de 2008 9:04:32
// U Format Specifier fr-FR Culture vendredi 31 octobre 2008 09:04:32
//
// Y Format Specifier de-DE Culture Oktober 2008
// Y Format Specifier en-US Culture October 2008
// Y Format Specifier es-ES Culture octubre de 2008
// Y Format Specifier fr-FR Culture octobre 2008
Imports System.Globalization
Module Example
Public Sub Main4()
' Create an array of all supported standard date and time format specifiers.
Dim formats() As String = {"d", "D", "f", "F", "g", "G", "m", "o", "r",
"s", "t", "T", "u", "U", "Y"}
' Create an array of four cultures.
Dim cultures() As CultureInfo = {CultureInfo.GetCultureInfo("de-DE"),
CultureInfo.GetCultureInfo("en-US"),
CultureInfo.GetCultureInfo("es-ES"),
CultureInfo.GetCultureInfo("fr-FR")}
' Define date to be displayed.
Dim dateToDisplay As Date = #10/1/2008 17:04:32#
' Iterate each standard format specifier.
For Each formatSpecifier As String In formats
For Each culture As CultureInfo In cultures
Console.WriteLine("{0} Format Specifier {1, 10} Culture {2, 40}",
formatSpecifier, culture.Name,
dateToDisplay.ToString(formatSpecifier, culture))
Next
Console.WriteLine()
Next
End Sub
End Module
' The example displays the following output:
' d Format Specifier de-DE Culture 01.10.2008
' d Format Specifier en-US Culture 10/1/2008
' d Format Specifier es-ES Culture 01/10/2008
' d Format Specifier fr-FR Culture 01/10/2008
'
' D Format Specifier de-DE Culture Mittwoch, 1. Oktober 2008
' D Format Specifier en-US Culture Wednesday, October 01, 2008
' D Format Specifier es-ES Culture miércoles, 01 de octubre de 2008
' D Format Specifier fr-FR Culture mercredi 1 octobre 2008
'
' f Format Specifier de-DE Culture Mittwoch, 1. Oktober 2008 17:04
' f Format Specifier en-US Culture Wednesday, October 01, 2008 5:04 PM
' f Format Specifier es-ES Culture miércoles, 01 de octubre de 2008 17:04
' f Format Specifier fr-FR Culture mercredi 1 octobre 2008 17:04
'
' F Format Specifier de-DE Culture Mittwoch, 1. Oktober 2008 17:04:32
' F Format Specifier en-US Culture Wednesday, October 01, 2008 5:04:32 PM
' F Format Specifier es-ES Culture miércoles, 01 de octubre de 2008 17:04:3
' F Format Specifier fr-FR Culture mercredi 1 octobre 2008 17:04:32
'
' g Format Specifier de-DE Culture 01.10.2008 17:04
' g Format Specifier en-US Culture 10/1/2008 5:04 PM
' g Format Specifier es-ES Culture 01/10/2008 17:04
' g Format Specifier fr-FR Culture 01/10/2008 17:04
'
' G Format Specifier de-DE Culture 01.10.2008 17:04:32
' G Format Specifier en-US Culture 10/1/2008 5:04:32 PM
' G Format Specifier es-ES Culture 01/10/2008 17:04:32
' G Format Specifier fr-FR Culture 01/10/2008 17:04:32
'
' m Format Specifier de-DE Culture 01 Oktober
' m Format Specifier en-US Culture October 01
' m Format Specifier es-ES Culture 01 octubre
' m Format Specifier fr-FR Culture 1 octobre
'
' o Format Specifier de-DE Culture 2008-10-01T17:04:32.0000000
' o Format Specifier en-US Culture 2008-10-01T17:04:32.0000000
' o Format Specifier es-ES Culture 2008-10-01T17:04:32.0000000
' o Format Specifier fr-FR Culture 2008-10-01T17:04:32.0000000
'
' r Format Specifier de-DE Culture Wed, 01 Oct 2008 17:04:32 GMT
' r Format Specifier en-US Culture Wed, 01 Oct 2008 17:04:32 GMT
' r Format Specifier es-ES Culture Wed, 01 Oct 2008 17:04:32 GMT
' r Format Specifier fr-FR Culture Wed, 01 Oct 2008 17:04:32 GMT
'
' s Format Specifier de-DE Culture 2008-10-01T17:04:32
' s Format Specifier en-US Culture 2008-10-01T17:04:32
' s Format Specifier es-ES Culture 2008-10-01T17:04:32
' s Format Specifier fr-FR Culture 2008-10-01T17:04:32
'
' t Format Specifier de-DE Culture 17:04
' t Format Specifier en-US Culture 5:04 PM
' t Format Specifier es-ES Culture 17:04
' t Format Specifier fr-FR Culture 17:04
'
' T Format Specifier de-DE Culture 17:04:32
' T Format Specifier en-US Culture 5:04:32 PM
' T Format Specifier es-ES Culture 17:04:32
' T Format Specifier fr-FR Culture 17:04:32
'
' u Format Specifier de-DE Culture 2008-10-01 17:04:32Z
' u Format Specifier en-US Culture 2008-10-01 17:04:32Z
' u Format Specifier es-ES Culture 2008-10-01 17:04:32Z
' u Format Specifier fr-FR Culture 2008-10-01 17:04:32Z
'
' U Format Specifier de-DE Culture Donnerstag, 2. Oktober 2008 00:04:32
' U Format Specifier en-US Culture Thursday, October 02, 2008 12:04:32 AM
' U Format Specifier es-ES Culture jueves, 02 de octubre de 2008 0:04:32
' U Format Specifier fr-FR Culture jeudi 2 octobre 2008 00:04:32
'
' Y Format Specifier de-DE Culture Oktober 2008
' Y Format Specifier en-US Culture October, 2008
' Y Format Specifier es-ES Culture octubre de 2008
' Y Format Specifier fr-FR Culture octobre 2008
Contoh berikut menunjukkan berbagai cara memformat DateTime nilai menggunakan invariant DateTimeFormatInfo.
using namespace System;
using namespace System::Globalization;
void main()
{
DateTime dt = DateTime::Now;
array<String^>^format = {L"d",L"D",L"f",L"F",L"g",L"G",L"m",L"r",L"s",L"t",L"T",L"u",L"U",L"y",L"dddd, MMMM dd yyyy",L"ddd, MMM d \"'\"yy",L"dddd, MMMM dd",L"M/yy",L"dd-MM-yy"};
String^ date;
for ( int i = 0; i < format->Length; i++ )
{
date = dt.ToString( format[ i ], DateTimeFormatInfo::InvariantInfo );
Console::WriteLine( String::Concat( format[ i ], L" :", date ) );
}
/** Output.
*
* d :08/17/2000
* D :Thursday, August 17, 2000
* f :Thursday, August 17, 2000 16:32
* F :Thursday, August 17, 2000 16:32:32
* g :08/17/2000 16:32
* G :08/17/2000 16:32:32
* m :August 17
* r :Thu, 17 Aug 2000 23:32:32 GMT
* s :2000-08-17T16:32:32
* t :16:32
* T :16:32:32
* u :2000-08-17 23:32:32Z
* U :Thursday, August 17, 2000 23:32:32
* y :August, 2000
* dddd, MMMM dd yyyy :Thursday, August 17 2000
* ddd, MMM d "'"yy :Thu, Aug 17 '00
* dddd, MMMM dd :Thursday, August 17
* M/yy :8/00
* dd-MM-yy :17-08-00
*/
}
open System
open System.Globalization
let dt = DateTime.Now
let formats =
[ "d"; "D"
"f"; "F"
"g"; "G"
"m"
"r"
"s"
"t"; "T"
"u"; "U"
"y"
"dddd, MMMM dd yyyy"
"ddd, MMM d \"'\"yy"
"dddd, MMMM dd"
"M/yy"
"dd-MM-yy" ]
for format in formats do
let date = dt.ToString(format, DateTimeFormatInfo.InvariantInfo)
printfn $"{format}: {date}"
// Output.
// d: 08/17/2000
// D: Thursday, August 17, 2000
// f: Thursday, August 17, 2000 16:32
// F: Thursday, August 17, 2000 16:32:32
// g: 08/17/2000 16:32
// G: 08/17/2000 16:32:32
// m: August 17
// r: Thu, 17 Aug 2000 23:32:32 GMT
// s: 2000-08-17T16:32:32
// t: 16:32
// T: 16:32:32
// u: 2000-08-17 23:32:32Z
// U: Thursday, August 17, 2000 23:32:32
// y: August, 2000
// dddd, MMMM dd yyyy: Thursday, August 17 2000
// ddd, MMM d "'"yy: Thu, Aug 17 '00
// dddd, MMMM dd: Thursday, August 17
// M/yy: 8/00
// dd-MM-yy: 17-08-00
using System;
using System.Globalization;
public class MainClass
{
public static void Main(string[] args)
{
DateTime dt = DateTime.Now;
String[] format = {
"d", "D",
"f", "F",
"g", "G",
"m",
"r",
"s",
"t", "T",
"u", "U",
"y",
"dddd, MMMM dd yyyy",
"ddd, MMM d \"'\"yy",
"dddd, MMMM dd",
"M/yy",
"dd-MM-yy",
};
string date;
for (int i = 0; i < format.Length; i++)
{
date = dt.ToString(format[i], DateTimeFormatInfo.InvariantInfo);
Console.WriteLine(string.Concat(format[i], " :", date));
}
/** Output.
*
* d :08/17/2000
* D :Thursday, August 17, 2000
* f :Thursday, August 17, 2000 16:32
* F :Thursday, August 17, 2000 16:32:32
* g :08/17/2000 16:32
* G :08/17/2000 16:32:32
* m :August 17
* r :Thu, 17 Aug 2000 23:32:32 GMT
* s :2000-08-17T16:32:32
* t :16:32
* T :16:32:32
* u :2000-08-17 23:32:32Z
* U :Thursday, August 17, 2000 23:32:32
* y :August, 2000
* dddd, MMMM dd yyyy :Thursday, August 17 2000
* ddd, MMM d "'"yy :Thu, Aug 17 '00
* dddd, MMMM dd :Thursday, August 17
* M/yy :8/00
* dd-MM-yy :17-08-00
*/
}
}
Option Explicit
Option Strict
Imports System.Globalization
Public Class MainClass
Public Shared Sub Main()
Dim dt As DateTime = DateTime.Now
Dim myformat() As String = {"d", "D", _
"f", "F", _
"g", "G", _
"m", _
"r", _
"s", _
"t", "T", _
"u", "U", _
"y", _
"dddd, MMMM dd yyyy", _
"ddd, MMM d ""'""yy", _
"dddd, MMMM dd", _
"M/yy", _
"dd-MM-yy"}
Dim mydate As String
Dim i As Integer
For i = 0 To myformat.Length - 1
mydate = dt.ToString(myformat(i), DateTimeFormatInfo.InvariantInfo)
Console.WriteLine(String.Concat(myformat(i), " :", mydate))
Next i
' Output.
'
' d :08/17/2000
' D :Thursday, August 17, 2000
' f :Thursday, August 17, 2000 16:32
' F :Thursday, August 17, 2000 16:32:32
' g :08/17/2000 16:32
' G :08/17/2000 16:32:32
' m :August 17
' r :Thu, 17 Aug 2000 23:32:32 GMT
' s :2000-08-17T16:32:32
' t :16:32
' T :16:32:32
' u :2000-08-17 23:32:32Z
' U :Thursday, August 17, 2000 23:32:32
' y :August, 2000
' dddd, MMMM dd yyyy :Thursday, August 17 2000
' ddd, MMM d "'"yy :Thu, Aug 17 '00
' dddd, MMMM dd :Thursday, August 17
' M/yy :8/00
' dd-MM-yy :17-08-00
End Sub
End Class
Keterangan
Parameter format
dapat berisi karakter penentu format tunggal (lihat String Format Tanggal dan Waktu Standar) atau pola format kustom (lihat String Format Tanggal dan Waktu Kustom). Jika format
adalah null
atau string kosong (""), penentu format standar, "G", digunakan.
Parameter provider
menentukan pola yang sesuai dengan penentu format standar, serta simbol dan nama komponen tanggal dan waktu. Parameter provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang mewakili budaya yang konvensi pemformatannya akan tercermin dalam string yang dikembalikan. Objek DateTimeFormatInfo yang CultureInfo.DateTimeFormat dikembalikan oleh properti menentukan pemformatan string yang dikembalikan.
Objek DateTimeFormatInfo yang menentukan format data tanggal dan waktu.
Objek kustom yang mengimplementasikan IFormatProvider antarmuka. Metodenya GetFormat mengembalikan DateTimeFormatInfo objek yang menyediakan informasi pemformatan.
Jika provider
adalah null
, yang DateTimeFormatInfo terkait dengan budaya saat ini digunakan. Untuk informasi selengkapnya, lihat CultureInfo.CurrentCulture.
Catatan Bagi Pemanggil
Metode mengembalikan ToString(String, IFormatProvider) representasi string tanggal dan waktu dalam kalender yang provider
digunakan oleh parameter . Kalendernya ditentukan oleh Calendar properti . Jika nilai instans saat ini DateTime lebih awal dari MinSupportedDateTime atau lebih baru dari MaxSupportedDateTime, metode akan melempar ArgumentOutOfRangeException. Contoh berikut memberikan ilustrasi. Ini mencoba memformat tanggal yang berada di luar rentang UmAlQuraCalendar kelas.
using System;
using System.Globalization;
public class Example4
{
public static void Main()
{
CultureInfo arSA = new CultureInfo("ar-SA");
arSA.DateTimeFormat.Calendar = new UmAlQuraCalendar();
DateTime date1 = new DateTime(1890, 9, 10);
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 = DateTime(1890, 9, 10)
try
date1.ToString("d", arSA)
|> printfn "%s"
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 5/13/2029
Imports System.Globalization
Module Example
Public Sub Main()
Dim arSA As New CultureInfo("ar-SA")
arSA.DateTimeFormat.Calendar = New UmAlQuraCalendar()
Dim date1 As Date = #09/10/1890#
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
Lihat juga
- DateTimeFormatInfo
- CultureInfo
- Tipe Pemformatan di .NET
- String format tanggal dan waktu kustom
- String Format Tanggal dan Waktu Kustom
- Sampel: Utilitas Pemformatan .NET Core WinForms (C#)
- Sampel: Utilitas Pemformatan .NET Core WinForms (Visual Basic)