Convert.ToDateTime Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen değeri bir DateTime değere dönüştürür.
Aşırı Yüklemeler
ToDateTime(Single) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(String) |
Bir tarih ve saatin belirtilen dize gösterimini eşdeğer bir tarih ve saat değerine dönüştürür. |
ToDateTime(UInt16) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(String, IFormatProvider) |
Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak bir sayının belirtilen dize gösterimini eşdeğer bir tarih ve saate dönüştürür. |
ToDateTime(UInt64) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Object, IFormatProvider) |
Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak belirtilen nesnenin değerini bir DateTime nesneye dönüştürür. |
ToDateTime(SByte) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(UInt32) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Object) |
Belirtilen nesnenin değerini bir DateTime nesneye dönüştürür. |
ToDateTime(Int16) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Int32) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Int64) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Double) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Decimal) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(DateTime) |
Belirtilen DateTime nesneyi döndürür; gerçek dönüştürme yapılmaz. |
ToDateTime(Char) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Byte) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Boolean) |
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException. |
ToDateTime(Single)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(float value);
public static DateTime ToDateTime (float value);
static member ToDateTime : single -> DateTime
Public Shared Function ToDateTime (value As Single) As DateTime
Parametreler
- value
- Single
Dönüştürülecek tek duyarlıklı kayan nokta değeri.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(String)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bir tarih ve saatin belirtilen dize gösterimini eşdeğer bir tarih ve saat değerine dönüştürür.
public:
static DateTime ToDateTime(System::String ^ value);
public static DateTime ToDateTime (string value);
public static DateTime ToDateTime (string? value);
static member ToDateTime : string -> DateTime
Public Shared Function ToDateTime (value As String) As DateTime
Parametreler
- value
- String
Tarih ve saatin dize gösterimi.
Döndürülenler
değerinin tarih ve saat eşdeğeri value
veya ise value
DateTime.MinValue değerinin tarih ve saat eşdeğeri.null
Özel durumlar
value
düzgün biçimlendirilmiş bir tarih ve saat dizesi değildir.
Örnekler
Aşağıdaki örnek, tarih ve saatlerin çeşitli dize gösterimlerini değerlere dönüştürmek için DateTime yöntemini kullanırToDateTime.
using System;
public class ConversionToDateTime
{
public static void Main()
{
string dateString = null;
// Convert a null string.
ConvertToDateTime(dateString);
// Convert an empty string.
dateString = String.Empty;
ConvertToDateTime(dateString);
// Convert a non-date string.
dateString = "not a date";
ConvertToDateTime(dateString);
// Try to convert various date strings.
dateString = "05/01/1996";
ConvertToDateTime(dateString);
dateString = "Tue Apr 28, 2009";
ConvertToDateTime(dateString);
dateString = "Wed Apr 28, 2009";
ConvertToDateTime(dateString);
dateString = "06 July 2008 7:32:47 AM";
ConvertToDateTime(dateString);
dateString = "17:32:47.003";
ConvertToDateTime(dateString);
// Convert a string returned by DateTime.ToString("R").
dateString = "Sat, 10 May 2008 14:32:17 GMT";
ConvertToDateTime(dateString);
// Convert a string returned by DateTime.ToString("o").
dateString = "2009-05-01T07:54:59.9843750-04:00";
ConvertToDateTime(dateString);
}
private static void ConvertToDateTime(string value)
{
DateTime convertedDate;
try {
convertedDate = Convert.ToDateTime(value);
Console.WriteLine("'{0}' converts to {1} {2} time.",
value, convertedDate,
convertedDate.Kind.ToString());
}
catch (FormatException) {
Console.WriteLine("'{0}' is not in the proper format.", value);
}
}
}
// The example displays the following output:
// '' converts to 1/1/0001 12:00:00 AM Unspecified time.
// '' is not in the proper format.
// 'not a date' is not in the proper format.
// '05/01/1996' converts to 5/1/1996 12:00:00 AM Unspecified time.
// 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM Unspecified time.
// 'Wed Apr 28, 2009' is not in the proper format.
// '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM Unspecified time.
// '17:32:47.003' converts to 5/30/2008 5:32:47 PM Unspecified time.
// 'Sat, 10 May 2008 14:32:17 GMT' converts to 5/10/2008 7:32:17 AM Local time.
// '2009-05-01T07:54:59.9843750-04:00' converts to 5/1/2009 4:54:59 AM Local time.
open System
let convertToDateTime (value: string) =
try
let convertedDate = Convert.ToDateTime value
printfn $"'{value}' converts to {convertedDate} {convertedDate.Kind} time."
with :?FormatException ->
printfn $"'{value}' is not in the proper format."
[<EntryPoint>]
let main _ =
let dateString = null
// Convert a null string.
convertToDateTime dateString
// Convert an empty string.
let dateString = String.Empty
convertToDateTime dateString
// Convert a non-date string.
let dateString = "not a date"
convertToDateTime dateString
// Try to convert various date strings.
let dateString = "05/01/1996"
convertToDateTime dateString
let dateString = "Tue Apr 28, 2009"
convertToDateTime dateString
let dateString = "Wed Apr 28, 2009"
convertToDateTime dateString
let dateString = "06 July 2008 7:32:47 AM"
convertToDateTime dateString
let dateString = "17:32:47.003"
convertToDateTime dateString
// Convert a string returned by DateTime.ToString("R").
let dateString = "Sat, 10 May 2008 14:32:17 GMT"
convertToDateTime dateString
// Convert a string returned by DateTime.ToString("o").
let dateString = "2009-05-01T07:54:59.9843750-04:00"
convertToDateTime dateString
0
// The example displays the following output:
// '' converts to 1/1/0001 12:00:00 AM Unspecified time.
// '' is not in the proper format.
// 'not a date' is not in the proper format.
// '05/01/1996' converts to 5/1/1996 12:00:00 AM Unspecified time.
// 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM Unspecified time.
// 'Wed Apr 28, 2009' is not in the proper format.
// '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM Unspecified time.
// '17:32:47.003' converts to 5/30/2008 5:32:47 PM Unspecified time.
// 'Sat, 10 May 2008 14:32:17 GMT' converts to 5/10/2008 7:32:17 AM Local time.
// '2009-05-01T07:54:59.9843750-04:00' converts to 5/1/2009 4:54:59 AM Local time.
Module ConversionToDateTime
Public Sub Main()
Dim dateString As String = Nothing
' Convert a null string.
ConvertToDateTime(dateString)
' Convert an empty string.
dateString = String.Empty
ConvertToDateTime(dateString)
' Convert a non-date string.
dateString = "not a date"
ConvertToDateTime(dateString)
' Try to convert various date strings.
dateString = "05/01/1996"
ConvertToDateTime(dateString)
dateString = "Tue Apr 28, 2009"
ConvertToDateTime(dateString)
dateString = "Wed Apr 28, 2009"
ConvertToDateTime(dateString)
dateString = "06 July 2008 7:32:47 AM"
ConvertToDateTime(dateString)
dateString = "17:32:47.003"
ConvertToDateTime(dateString)
' Convert a string returned by DateTime.ToString("R").
dateString = "Sat, 10 May 2008 14:32:17 GMT"
ConvertToDateTime(dateString)
' Convert a string returned by DateTime.ToString("o")
dateString = "2009-05-01T07:54:59.9843750-04:00"
ConvertToDateTime(dateString)
End Sub
Private Sub ConvertToDateTime(value As String)
Dim convertedDate As Date
Try
convertedDate = Convert.ToDateTime(value)
Console.WriteLine("'{0}' converts to {1}.", value, convertedDate)
Catch e As FormatException
Console.WriteLine("'{0}' is not in the proper format.", value)
End Try
End Sub
End Module
' The example displays the following output:
' '' converts to 1/1/0001 12:00:00 AM.
' '' is not in the proper format.
' 'not a date' is not in the proper format.
' '05/01/1996' converts to 5/1/1996 12:00:00 AM.
' 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM.
' 'Wed Apr 28, 2009' is not in the proper format.
' '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM.
' '17:32:47.003' converts to 5/30/2008 5:32:47 PM.
' 'Sat, 10 May 2008 14:32:17 GMT' converts to 5/10/2008 7:32:17 AM.
' '2009-05-01T07:54:59.9843750-04:00' converts to 5/1/2009 4:54:59 AM.
Açıklamalar
null
değilsevalue
, dönüş değeri, geçerli kültür için başlatılan bir DateTimeFormatInfo nesnede biçimlendirme bilgilerini kullanma yöntemini value
çağırmanın sonucudurDateTime.Parse. bağımsız değişkeni, value
konu başlığında açıklanan biçimlerden birinde tarih ve saatin gösterimini DateTimeFormatInfo içermelidir. ise value
null
yöntemi döndürür DateTime.MinValue.
Bu yöntem tamamen ayrıştırmaya value
çalışır ve bir FormatExceptionoluşturmaktan kaçının. Geçerli tarihle birlikte eksik ay, gün ve yıl bilgilerini tamamlar.
value
Yalnızca bir tarih içeriyorsa ve saat yoksa, bu yöntem gece yarısı saatini varsayar. içindeki value
baştaki, içteki veya sondaki boşluk karakterleri yoksayılır.
Dönüştürme başarısız olursa bir özel durumu işlemeyi tercih ederseniz, bunun yerine yöntemini çağırabilirsiniz DateTime.TryParse . Dönüştürmenin başarılı mı yoksa başarısız mı olduğunu gösteren bir Boolean değer döndürür.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(UInt16)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Önemli
Bu API, CLS uyumlu değildir.
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::UInt16 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (ushort value);
[<System.CLSCompliant(false)>]
static member ToDateTime : uint16 -> DateTime
Public Shared Function ToDateTime (value As UShort) As DateTime
Parametreler
- value
- UInt16
Dönüştürülecek 16 bitlik işaretsiz tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
- Öznitelikler
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(String, IFormatProvider)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak bir sayının belirtilen dize gösterimini eşdeğer bir tarih ve saate dönüştürür.
public:
static DateTime ToDateTime(System::String ^ value, IFormatProvider ^ provider);
public static DateTime ToDateTime (string value, IFormatProvider provider);
public static DateTime ToDateTime (string? value, IFormatProvider? provider);
static member ToDateTime : string * IFormatProvider -> DateTime
Public Shared Function ToDateTime (value As String, provider As IFormatProvider) As DateTime
Parametreler
- value
- String
Dönüştürülecek bir tarih ve saat içeren bir dize.
- provider
- IFormatProvider
Kültüre özgü biçimlendirme bilgileri sağlayan nesne.
Döndürülenler
değerinin tarih ve saat eşdeğeri value
veya ise value
DateTime.MinValue değerinin tarih ve saat eşdeğeri.null
Özel durumlar
value
düzgün biçimlendirilmiş bir tarih ve saat dizesi değildir.
Örnekler
Aşağıdaki örnek, bir IFormatProvider nesnesi kullanarak yöntemiyle tarih değerlerinin ToDateTime
dize gösterimlerini dönüştürür.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
Console.WriteLine("{0,-18}{1,-12}{2}\n", "Date String", "Culture", "Result");
string[] cultureNames = { "en-US", "ru-RU","ja-JP" };
string[] dateStrings = { "01/02/09", "2009/02/03", "01/2009/03",
"01/02/2009", "21/02/09", "01/22/09",
"01/02/23" };
// Iterate each culture name in the array.
foreach (string cultureName in cultureNames)
{
CultureInfo culture = new CultureInfo(cultureName);
// Parse each date using the designated culture.
foreach (string dateStr in dateStrings)
{
DateTime dateTimeValue;
try {
dateTimeValue = Convert.ToDateTime(dateStr, culture);
// Display the date and time in a fixed format.
Console.WriteLine("{0,-18}{1,-12}{2:yyyy-MMM-dd}",
dateStr, cultureName, dateTimeValue);
}
catch (FormatException e) {
Console.WriteLine("{0,-18}{1,-12}{2}",
dateStr, cultureName, e.GetType().Name);
}
}
Console.WriteLine();
}
}
}
open System
open System.Globalization
printfn $"""{"Date String",-18}{"Culture",-12}{"Result"}\n"""
let cultureNames = [ "en-US"; "ru-RU"; "ja-JP" ]
let dateStrings =
[ "01/02/09"; "2009/02/03"; "01/2009/03"
"01/02/2009"; "21/02/09"; "01/22/09"; "01/02/23" ]
// Iterate each culture name in the array.
for cultureName in cultureNames do
let culture = CultureInfo cultureName
// Parse each date using the designated culture.
for dateStr in dateStrings do
try
let dateTimeValue = Convert.ToDateTime(dateStr, culture)
// Display the date and time in a fixed format.
printfn $"""{dateStr,-18}{cultureName,-12}{dateTimeValue.ToString "yyyy-MMM-dd"}"""
with :? FormatException as e ->
printfn $"{dateStr,-18}{cultureName,-12}{e.GetType().Name}"
printfn ""
Imports System.Globalization
Module Example
Public Sub Main( )
Console.WriteLine("{0,-18}{1,-12}{2}", "Date String", "Culture", "Result")
Console.WriteLine()
Dim cultureNames() As String = { "en-US", "ru-RU","ja-JP" }
Dim dateStrings() As String = { "01/02/09", "2009/02/03", "01/2009/03", _
"01/02/2009", "21/02/09", "01/22/09", _
"01/02/23" }
' Iterate each culture name in the array.
For Each cultureName As String In cultureNames
Dim culture As CultureInfo = New CultureInfo(cultureName)
' Parse each date using the designated culture.
For Each dateStr As String In dateStrings
Dim dateTimeValue As DateTime
Try
dateTimeValue = Convert.ToDateTime(dateStr, culture)
' Display the date and time in a fixed format.
Console.WriteLine("{0,-18}{1,-12}{2:yyyy-MMM-dd}", _
dateStr, cultureName, dateTimeValue)
Catch e As FormatException
Console.WriteLine("{0,-18}{1,-12}{2}", _
dateStr, cultureName, e.GetType().Name)
End Try
Next
Console.WriteLine()
Next
End Sub
End Module
' The example displays the following output:
' Date String Culture Result
'
' 01/02/09 en-US 2009-Jan-02
' 2009/02/03 en-US 2009-Feb-03
' 01/2009/03 en-US 2009-Jan-03
' 01/02/2009 en-US 2009-Jan-02
' 21/02/09 en-US FormatException
' 01/22/09 en-US 2009-Jan-22
' 01/02/23 en-US 2023-Jan-02
'
' 01/02/09 ru-RU 2009-Feb-01
' 2009/02/03 ru-RU 2009-Feb-03
' 01/2009/03 ru-RU 2009-Jan-03
' 01/02/2009 ru-RU 2009-Feb-01
' 21/02/09 ru-RU 2009-Feb-21
' 01/22/09 ru-RU FormatException
' 01/02/23 ru-RU 2023-Feb-01
'
' 01/02/09 ja-JP 2001-Feb-09
' 2009/02/03 ja-JP 2009-Feb-03
' 01/2009/03 ja-JP 2009-Jan-03
' 01/02/2009 ja-JP 2009-Jan-02
' 21/02/09 ja-JP 2021-Feb-09
' 01/22/09 ja-JP FormatException
' 01/02/23 ja-JP 2001-Feb-23
Açıklamalar
Dönüş değeri, üzerinde value
yöntemini çağırmanın DateTime.Parse(String, IFormatProvider) sonucudur.
provider
bir nesnesi edinen bir IFormatProviderDateTimeFormatInfo örnektir.
DateTimeFormatInfo nesnesi, biçimi value
hakkında kültüre özgü bilgiler sağlar. ise provider
null
, DateTimeFormatInfo geçerli kültür için kullanılır.
Dönüştürme başarısız olursa bir özel durumu işlemeyi tercih ederseniz, bunun yerine yöntemini çağırabilirsiniz DateTime.TryParse . Dönüştürmenin başarılı mı yoksa başarısız mı olduğunu gösteren bir Boolean değer döndürür.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(UInt64)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Önemli
Bu API, CLS uyumlu değildir.
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::UInt64 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (ulong value);
[<System.CLSCompliant(false)>]
static member ToDateTime : uint64 -> DateTime
Public Shared Function ToDateTime (value As ULong) As DateTime
Parametreler
- value
- UInt64
Dönüştürülecek 64 bit işaretsiz tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
- Öznitelikler
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Object, IFormatProvider)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Belirtilen kültüre özgü biçimlendirme bilgilerini kullanarak belirtilen nesnenin değerini bir DateTime nesneye dönüştürür.
public:
static DateTime ToDateTime(System::Object ^ value, IFormatProvider ^ provider);
public static DateTime ToDateTime (object value, IFormatProvider provider);
public static DateTime ToDateTime (object? value, IFormatProvider? provider);
static member ToDateTime : obj * IFormatProvider -> DateTime
Public Shared Function ToDateTime (value As Object, provider As IFormatProvider) As DateTime
Parametreler
- value
- Object
Arabirimini uygulayan IConvertible bir nesne.
- provider
- IFormatProvider
Kültüre özgü biçimlendirme bilgileri sağlayan nesne.
Döndürülenler
değerinin tarih ve saat eşdeğeri value
veya ise value
DateTime.MinValue değerinin tarih ve saat eşdeğeri.null
Özel durumlar
value
geçerli bir tarih ve saat değeri değildir.
Örnekler
Aşağıdaki örnek, CustomProvider
GetFormat yöntemi konsola çağrıldığını belirten bir ileti veren ve ardından adı sınıf oluşturucusunun parametresi olarak geçirilen kültürün nesnesini döndüren DateTimeFormatInfo özel biçim sağlayıcısını tanımlar. Bu CustomProvider
nesnelerin her biri, bir nesne dizisindeki öğeleri tarih ve saat değerlerine dönüştürmek için kullanılır. Çıktı, nesnesinin CustomProvider
dönüştürmede yalnızca parametresinin value
türü bir Stringolduğunda kullanıldığını gösterir.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
string[] cultureNames = { "en-US", "hu-HU", "pt-PT" };
object[] objects = { 12, 17.2, false, new DateTime(2010, 1, 1), "today",
new System.Collections.ArrayList(), 'c',
"05/10/2009 6:13:18 PM", "September 8, 1899" };
foreach (string cultureName in cultureNames)
{
Console.WriteLine("{0} culture:", cultureName);
CustomProvider provider = new CustomProvider(cultureName);
foreach (object obj in objects)
{
try {
DateTime dateValue = Convert.ToDateTime(obj, provider);
Console.WriteLine("{0} --> {1}", obj,
dateValue.ToString(new CultureInfo(cultureName)));
}
catch (FormatException) {
Console.WriteLine("{0} --> Bad Format", obj);
}
catch (InvalidCastException) {
Console.WriteLine("{0} --> Conversion Not Supported", obj);
}
}
Console.WriteLine();
}
}
}
public class CustomProvider : IFormatProvider
{
private string cultureName;
public CustomProvider(string cultureName)
{
this.cultureName = cultureName;
}
public object GetFormat(Type formatType)
{
if (formatType == typeof(DateTimeFormatInfo))
{
Console.Write("(CustomProvider retrieved.) ");
return new CultureInfo(cultureName).GetFormat(formatType);
}
else
{
return null;
}
}
}
// The example displays the following output:
// en-US culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 1/1/2010 12:00:00 AM
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 5/10/2009 6:13:18 PM
// (CustomProvider retrieved.) September 8, 1899 --> 9/8/1899 12:00:00 AM
//
// hu-HU culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 2010. 01. 01. 0:00:00
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 2009. 05. 10. 18:13:18
// (CustomProvider retrieved.) September 8, 1899 --> 1899. 09. 08. 0:00:00
//
// pt-PT culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 01-01-2010 0:00:00
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 05-10-2009 18:13:18
// (CustomProvider retrieved.) September 8, 1899 --> 08-09-1899 0:00:00
open System
open System.Globalization
type CustomProvider(cultureName: string) =
interface IFormatProvider with
member _.GetFormat(formatType) =
if formatType = typeof<DateTimeFormatInfo> then
printf "(CustomProvider retrieved.) "
CultureInfo(cultureName).GetFormat formatType
else
null
let cultureNames = [ "en-US"; "hu-HU"; "pt-PT" ]
let objects: obj list =
[ 12; 17.2; false; DateTime(2010, 1, 1); "today"
System.Collections.ArrayList(); 'c'
"05/10/2009 6:13:18 PM"; "September 8, 1899" ]
for cultureName in cultureNames do
printfn $"{cultureName} culture:"
let provider = CustomProvider cultureName
for obj in objects do
try
let dateValue = Convert.ToDateTime(obj, provider)
printfn $"{obj} --> {dateValue.ToString(CultureInfo cultureName)}"
with
| :? FormatException ->
printfn $"{obj} --> Bad Format"
| :? InvalidCastException ->
printfn $"{obj} --> Conversion Not Supported"
printfn ""
// The example displays the following output:
// en-US culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 1/1/2010 12:00:00 AM
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 5/10/2009 6:13:18 PM
// (CustomProvider retrieved.) September 8, 1899 --> 9/8/1899 12:00:00 AM
//
// hu-HU culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 2010. 01. 01. 0:00:00
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 2009. 05. 10. 18:13:18
// (CustomProvider retrieved.) September 8, 1899 --> 1899. 09. 08. 0:00:00
//
// pt-PT culture:
// 12 --> Conversion Not Supported
// 17.2 --> Conversion Not Supported
// False --> Conversion Not Supported
// 1/1/2010 12:00:00 AM --> 01-01-2010 0:00:00
// (CustomProvider retrieved.) today --> Bad Format
// System.Collections.ArrayList --> Conversion Not Supported
// c --> Conversion Not Supported
// (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 05-10-2009 18:13:18
// (CustomProvider retrieved.) September 8, 1899 --> 08-09-1899 0:00:00
Imports System.Globalization
Module Example
Public Sub Main()
Dim cultureNames() As String = { "en-US", "hu-HU", "pt-PT" }
Dim objects() As Object = { 12, 17.2, False, #1/1/2010#, "today", _
New System.Collections.ArrayList(), "c"c, _
"05/10/2009 6:13:18 PM", "September 8, 1899" }
For Each cultureName As String In cultureNames
Console.WriteLine("{0} culture:", cultureName)
Dim provider As New CustomProvider(cultureName)
For Each obj As Object In objects
Try
Dim dateValue As Date = Convert.ToDateTime(obj, provider)
Console.WriteLine("{0} --> {1}", obj, _
dateValue.ToString(New CultureInfo(cultureName)))
Catch e As FormatException
Console.WriteLine("{0} --> Bad Format", obj)
Catch e As InvalidCastException
Console.WriteLine("{0} --> Conversion Not Supported", obj)
End Try
Next
Console.WriteLine()
Next
End Sub
End Module
Public Class CustomProvider : Implements IFormatProvider
Private cultureName As String
Public Sub New(cultureName As String)
Me.cultureName = cultureName
End Sub
Public Function GetFormat(formatType As Type) As Object _
Implements IFormatProvider.GetFormat
If formatType Is GetType(DateTimeFormatInfo) Then
Console.Write("(CustomProvider retrieved.) ")
Return New CultureInfo(cultureName).GetFormat(formatType)
Else
Return Nothing
End If
End Function
End Class
' The example displays the following output:
' en-US culture:
' 12 --> Conversion Not Supported
' 17.2 --> Conversion Not Supported
' False --> Conversion Not Supported
' 1/1/2010 12:00:00 AM --> 1/1/2010 12:00:00 AM
' (CustomProvider retrieved.) today --> Bad Format
' System.Collections.ArrayList --> Conversion Not Supported
' c --> Conversion Not Supported
' (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 5/10/2009 6:13:18 PM
' (CustomProvider retrieved.) September 8, 1899 --> 9/8/1899 12:00:00 AM
'
' hu-HU culture:
' 12 --> Conversion Not Supported
' 17.2 --> Conversion Not Supported
' False --> Conversion Not Supported
' 1/1/2010 12:00:00 AM --> 2010. 01. 01. 0:00:00
' (CustomProvider retrieved.) today --> Bad Format
' System.Collections.ArrayList --> Conversion Not Supported
' c --> Conversion Not Supported
' (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 2009. 05. 10. 18:13:18
' (CustomProvider retrieved.) September 8, 1899 --> 1899. 09. 08. 0:00:00
'
' pt-PT culture:
' 12 --> Conversion Not Supported
' 17.2 --> Conversion Not Supported
' False --> Conversion Not Supported
' 1/1/2010 12:00:00 AM --> 01-01-2010 0:00:00
' (CustomProvider retrieved.) today --> Bad Format
' System.Collections.ArrayList --> Conversion Not Supported
' c --> Conversion Not Supported
' (CustomProvider retrieved.) 05/10/2009 6:13:18 PM --> 05-10-2009 18:13:18
' (CustomProvider retrieved.) September 8, 1899 --> 08-09-1899 0:00:00
Açıklamalar
Dönüş değeri, temel alınan türündeki IConvertible.ToDateTime yöntemini çağırmanın sonucudur value
.
provider
kullanıcının içeriği hakkında kültüre özgü dönüştürme bilgilerini belirtmesini value
sağlar. Örneğin, value
bir tarihi temsil eden bir String ise, provider
bu tarihi temsil etmek için kullanılan gösterimi hakkında kültüre özgü bilgiler sağlayabilir.
provider
, çalışma zamanı türü value
bir ise veya uygulaması tarafından kullanılan kullanıcı tanımlı bir türse value
IConvertible.ToDateTime dönüştürmesine value
provider
dahil Stringedilir. çalışma zamanı türü value
ve provider
ise Stringnull
CultureInfo, geçerli kültürü temsil eden nesne kullanılır.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(SByte)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Önemli
Bu API, CLS uyumlu değildir.
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::SByte value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (sbyte value);
[<System.CLSCompliant(false)>]
static member ToDateTime : sbyte -> DateTime
Public Shared Function ToDateTime (value As SByte) As DateTime
Parametreler
- value
- SByte
Dönüştürülecek 8 bit işaretli tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
- Öznitelikler
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(UInt32)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Önemli
Bu API, CLS uyumlu değildir.
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::UInt32 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (uint value);
[<System.CLSCompliant(false)>]
static member ToDateTime : uint32 -> DateTime
Public Shared Function ToDateTime (value As UInteger) As DateTime
Parametreler
- value
- UInt32
Dönüştürülecek 32 bit işaretsiz tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
- Öznitelikler
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Object)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Belirtilen nesnenin değerini bir DateTime nesneye dönüştürür.
public:
static DateTime ToDateTime(System::Object ^ value);
public static DateTime ToDateTime (object value);
public static DateTime ToDateTime (object? value);
static member ToDateTime : obj -> DateTime
Public Shared Function ToDateTime (value As Object) As DateTime
Parametreler
- value
- Object
arabirimini IConvertible uygulayan bir nesne veya null
.
Döndürülenler
değerinin tarih ve saat eşdeğeri value
veya ise value
DateTime.MinValue değerinin tarih ve saat eşdeğeri.null
Özel durumlar
value
geçerli bir tarih ve saat değeri değildir.
Örnekler
Aşağıdaki örnek, yöntemini çeşitli Object değişkenlerle çağırırToDateTime(Object).
using System;
public class ConversionToDateTime
{
public static void Main()
{
// Try converting an integer.
int number = 16352;
ConvertToDateTime(number);
// Convert a null.
object obj = null;
ConvertToDateTime(obj);
// Convert a non-date string.
string nonDateString = "monthly";
ConvertToDateTime(nonDateString);
// Try to convert various date strings.
string dateString;
dateString = "05/01/1996";
ConvertToDateTime(dateString);
dateString = "Tue Apr 28, 2009";
ConvertToDateTime(dateString);
dateString = "06 July 2008 7:32:47 AM";
ConvertToDateTime(dateString);
dateString = "17:32:47.003";
ConvertToDateTime(dateString);
}
private static void ConvertToDateTime(object value)
{
DateTime convertedDate;
try {
convertedDate = Convert.ToDateTime(value);
Console.WriteLine("'{0}' converts to {1}.", value, convertedDate);
}
catch (FormatException) {
Console.WriteLine("'{0}' is not in the proper format.", value);
}
catch (InvalidCastException) {
Console.WriteLine("Conversion of the {0} '{1}' is not supported",
value.GetType().Name, value);
}
}
}
// The example displays the following output:
// Conversion of the Int32 '16352' is not supported
// '' converts to 1/1/0001 12:00:00 AM.
// 'monthly' is not in the proper format.
// '05/01/1996' converts to 5/1/1996 12:00:00 AM.
// 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM.
// '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM.
// '17:32:47.003' converts to 5/28/2008 5:32:47 PM.
open System
let convertToDateTime (value: obj) =
try
let convertedDate = Convert.ToDateTime value
printfn $"'{value}' converts to {convertedDate}."
with
| :? FormatException ->
printfn $"'{value}' is not in the proper format."
| :? InvalidCastException ->
printfn $"Conversion of the {value.GetType().Name} '{value}' is not supported"
[<EntryPoint>]
let main _ =
// Try converting an integer.
let number = 16352
convertToDateTime number
// Convert a null.
let obj = box null
convertToDateTime obj
// Convert a non-date string.
let nonDateString = "monthly"
convertToDateTime nonDateString
// Try to convert various date strings.
let dateString = "05/01/1996"
convertToDateTime dateString
let dateString = "Tue Apr 28, 2009"
convertToDateTime dateString
let dateString = "06 July 2008 7:32:47 AM"
convertToDateTime dateString
let dateString = "17:32:47.003"
convertToDateTime dateString
0
// The example displays the following output:
// Conversion of the Int32 '16352' is not supported
// '' converts to 1/1/0001 12:00:00 AM.
// 'monthly' is not in the proper format.
// '05/01/1996' converts to 5/1/1996 12:00:00 AM.
// 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM.
// '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM.
// '17:32:47.003' converts to 5/28/2008 5:32:47 PM.
Module ConversionToDateTime
Public Sub Main()
' Try converting an integer.
Dim number As Integer = 16352
ConvertToDateTime(number)
' Convert a null.
Dim obj As Object = Nothing
ConvertToDateTime(obj)
' Convert a non-date string.
Dim nonDateString As String = "monthly"
ConvertToDateTime(nonDateString)
' Try to convert various dates.
Dim dateString As String
dateString = "05/01/1996"
ConvertToDateTime(dateString)
dateString = "Tue Apr 28, 2009"
ConvertToDateTime(dateString)
dateString = "06 July 2008 7:32:47 AM"
ConvertToDateTime(dateString)
dateString = "17:32:47.003"
ConvertToDateTime(dateString)
End Sub
Private Sub ConvertToDateTime(value As Object)
Dim convertedDate As Date
Try
convertedDate = Convert.ToDateTime(value)
Console.WriteLine("'{0}' converts to {1}.", value, convertedDate)
Catch e As FormatException
Console.WriteLine("'{0}' is not in the proper format.", value)
Catch e As InvalidCastException
Console.WriteLine("Conversion of the {0} '{1}' is not supported", _
value.GetType().Name, value)
End Try
End Sub
End Module
' The example displays the following output:
' Conversion of the Int32 '16352' is not supported
' '' converts to 1/1/0001 12:00:00 AM.
' 'monthly' is not in the proper format.
' '05/01/1996' converts to 5/1/1996 12:00:00 AM.
' 'Tue Apr 28, 2009' converts to 4/28/2009 12:00:00 AM.
' '06 July 2008 7:32:47 AM' converts to 7/6/2008 7:32:47 AM.
' '17:32:47.003' converts to 5/28/2008 5:32:47 PM.
Açıklamalar
Dönüştürmenin başarılı olması için, parametrenin value
DateTime çalışma zamanı türü veya Stringveya olmalıdır.value
null
Aksi takdirde, yöntemi bir InvalidCastExceptionoluşturur. Ayrıca, bir dize ise value
, geçerli kültürdeki bir tarih ve saat değerinin geçerli bir gösterimini içermelidir veya bir FormatException oluşturulur.
Dönüş değeri, temel alınan türündeki IConvertible.ToDateTime yöntemini çağırmanın sonucudur value
.
Şunlara uygulanır
ToDateTime(Int16)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(short value);
public static DateTime ToDateTime (short value);
static member ToDateTime : int16 -> DateTime
Public Shared Function ToDateTime (value As Short) As DateTime
Parametreler
- value
- Int16
Dönüştürülecek 16 bitlik işaretli tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Int32)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(int value);
public static DateTime ToDateTime (int value);
static member ToDateTime : int -> DateTime
Public Shared Function ToDateTime (value As Integer) As DateTime
Parametreler
- value
- Int32
Dönüştürülecek 32 bit işaretli tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Int64)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(long value);
public static DateTime ToDateTime (long value);
static member ToDateTime : int64 -> DateTime
Public Shared Function ToDateTime (value As Long) As DateTime
Parametreler
- value
- Int64
Dönüştürülecek 64 bit işaretli tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Double)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(double value);
public static DateTime ToDateTime (double value);
static member ToDateTime : double -> DateTime
Public Shared Function ToDateTime (value As Double) As DateTime
Parametreler
- value
- Double
Dönüştürülecek çift duyarlıklı kayan nokta değeri.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Decimal)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::Decimal value);
public static DateTime ToDateTime (decimal value);
static member ToDateTime : decimal -> DateTime
Public Shared Function ToDateTime (value As Decimal) As DateTime
Parametreler
- value
- Decimal
Dönüştürülecek sayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Şunlara uygulanır
ToDateTime(DateTime)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Belirtilen DateTime nesneyi döndürür; gerçek dönüştürme yapılmaz.
public:
static DateTime ToDateTime(DateTime value);
public static DateTime ToDateTime (DateTime value);
static member ToDateTime : DateTime -> DateTime
Public Shared Function ToDateTime (value As DateTime) As DateTime
Parametreler
- value
- DateTime
Tarih ve saat değeri.
Döndürülenler
value
değiştirilmeden döndürülür.
Şunlara uygulanır
ToDateTime(Char)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(char value);
public static DateTime ToDateTime (char value);
static member ToDateTime : char -> DateTime
Public Shared Function ToDateTime (value As Char) As DateTime
Parametreler
- value
- Char
Dönüştürülecek Unicode karakteri.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Byte)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(System::Byte value);
public static DateTime ToDateTime (byte value);
static member ToDateTime : byte -> DateTime
Public Shared Function ToDateTime (value As Byte) As DateTime
Parametreler
- value
- Byte
Dönüştürülecek 8 bit işaretsiz tamsayı.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.
Ayrıca bkz.
Şunlara uygulanır
ToDateTime(Boolean)
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
- Kaynak:
- Convert.cs
Bu yöntemin çağrılması her zaman oluşturur InvalidCastException.
public:
static DateTime ToDateTime(bool value);
public static DateTime ToDateTime (bool value);
static member ToDateTime : bool -> DateTime
Public Shared Function ToDateTime (value As Boolean) As DateTime
Parametreler
- value
- Boolean
Dönüştürülecek Boole değeri.
Döndürülenler
Bu dönüşüm desteklenmiyor. Hiçbir değer döndürülmez.
Özel durumlar
Bu dönüşüm desteklenmiyor.