Convert.ToDateTime Convert.ToDateTime Convert.ToDateTime Convert.ToDateTime Method

Definizione

Converte un valore specificato in un valore DateTime.Converts a specified value to a DateTime value.

Overload

ToDateTime(Single) ToDateTime(Single) ToDateTime(Single) ToDateTime(Single)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(String) ToDateTime(String) ToDateTime(String) ToDateTime(String)

Converte la rappresentazione di stringa specificata di una data e un'ora in un valore di data e ora equivalente.Converts the specified string representation of a date and time to an equivalent date and time value.

ToDateTime(UInt16) ToDateTime(UInt16) ToDateTime(UInt16) ToDateTime(UInt16)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider)

Converte la rappresentazione di stringa specificata di un numero in un valore di data e ora equivalente mediante le informazioni di formattazione specifiche delle impostazioni cultura indicate.Converts the specified string representation of a number to an equivalent date and time, using the specified culture-specific formatting information.

ToDateTime(UInt64) ToDateTime(UInt64) ToDateTime(UInt64) ToDateTime(UInt64)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider)

Converte il valore dell'oggetto specificato in un oggetto DateTime mediante le informazioni di formattazione specifiche delle impostazioni cultura indicate.Converts the value of the specified object to a DateTime object, using the specified culture-specific formatting information.

ToDateTime(SByte) ToDateTime(SByte) ToDateTime(SByte) ToDateTime(SByte)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(UInt32) ToDateTime(UInt32) ToDateTime(UInt32) ToDateTime(UInt32)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Object) ToDateTime(Object) ToDateTime(Object) ToDateTime(Object)

Converte il valore dell'oggetto specificato in un oggetto DateTime.Converts the value of the specified object to a DateTime object.

ToDateTime(Double) ToDateTime(Double) ToDateTime(Double) ToDateTime(Double)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Int32) ToDateTime(Int32) ToDateTime(Int32) ToDateTime(Int32)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Boolean) ToDateTime(Boolean) ToDateTime(Boolean) ToDateTime(Boolean)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Byte) ToDateTime(Byte) ToDateTime(Byte) ToDateTime(Byte)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Char) ToDateTime(Char) ToDateTime(Char) ToDateTime(Char)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Int64) ToDateTime(Int64) ToDateTime(Int64) ToDateTime(Int64)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Decimal) ToDateTime(Decimal) ToDateTime(Decimal) ToDateTime(Decimal)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(Int16) ToDateTime(Int16) ToDateTime(Int16) ToDateTime(Int16)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

ToDateTime(DateTime) ToDateTime(DateTime) ToDateTime(DateTime) ToDateTime(DateTime)

Restituisce l'oggetto DateTime specificato; di fatto, non viene eseguita alcuna conversione.Returns the specified DateTime object; no actual conversion is performed.

ToDateTime(Single) ToDateTime(Single) ToDateTime(Single) ToDateTime(Single)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Single Single Single Single

Valore a virgola mobile a precisione singola da convertire.The single-precision floating-point value to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(String) ToDateTime(String) ToDateTime(String) ToDateTime(String)

Converte la rappresentazione di stringa specificata di una data e un'ora in un valore di data e ora equivalente.Converts the specified string representation of a date and time to an equivalent date and time value.

public:
 static DateTime ToDateTime(System::String ^ value);
public static DateTime ToDateTime (string value);
static member ToDateTime : string -> DateTime
Public Shared Function ToDateTime (value As String) As DateTime

Parametri

value
String String String String

Rappresentazione di stringa di una data e ora.The string representation of a date and time.

Restituisce

Data e ora equivalenti al valore di value oppure data e ora equivalenti a MinValue se value è null.The date and time equivalent of the value of value, or the date and time equivalent of MinValue if value is null.

Eccezioni

value non è una stringa di data e ora formattata correttamente.value is not a properly formatted date and time string.

Esempi

Nell'esempio seguente viene usato ToDateTime il metodo per convertire diverse rappresentazioni di stringa di date DateTime e ore in valori.The following example uses the ToDateTime method to convert various string representations of dates and times to DateTime values.

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

Commenti

Se value DateTime.Parse non nullè, il valore restituito è il risultato della chiamata al metodo sull' value utilizzo delle informazioni di formattazione in un DateTimeFormatInfo oggetto inizializzato per le impostazioni cultura correnti.If value is not null, the return value is the result of invoking the DateTime.Parse method on value using the formatting information in a DateTimeFormatInfo object that is initialized for the current culture. L' value argomento deve contenere la rappresentazione di una data e di un'ora in uno dei formati descritti DateTimeFormatInfo nell'argomento.The value argument must contain the representation of a date and time in one of the formats described in the DateTimeFormatInfo topic. Se value è null, il metodo restituisce DateTime.MinValue.If value is null, the method returns DateTime.MinValue.

Questo metodo tenta di analizzare value completamente ed evitare di generare FormatExceptionun'eccezione.This method tries to parse value completely and avoid throwing a FormatException. Sono state completate le informazioni mancanti relative a mese, giorno e anno con la data corrente.It completes missing month, day, and year information with the current date. Se value contiene solo una data e nessuna ora, questo metodo presuppone un'ora della mezzanotte.If value contains only a date and no time, this method assumes a time of midnight. Tutti gli spazi vuoti iniziali, interni o finali in value vengono ignorati.Any leading, inner, or trailing white-space characters in value are ignored.

Se si preferisce non gestire un'eccezione se la conversione non riesce, è invece possibile chiamare DateTime.TryParse il metodo.If you prefer not to handle an exception if the conversion fails, you can call the DateTime.TryParse method instead. Restituisce un Boolean valore che indica se la conversione ha avuto esito positivo o negativo.It returns a Boolean value that indicates whether the conversion succeeded or failed.

Vedi anche

ToDateTime(UInt16) ToDateTime(UInt16) ToDateTime(UInt16) ToDateTime(UInt16)

Importante

Questa API non è conforme a CLS.

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

public:
 static DateTime ToDateTime(System::UInt16 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (ushort value);
static member ToDateTime : uint16 -> DateTime
Public Shared Function ToDateTime (value As UShort) As DateTime

Parametri

value
UInt16 UInt16 UInt16 UInt16

Intero senza segno a 16 bit da convertire.The 16-bit unsigned integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider) ToDateTime(String, IFormatProvider)

Converte la rappresentazione di stringa specificata di un numero in un valore di data e ora equivalente mediante le informazioni di formattazione specifiche delle impostazioni cultura indicate.Converts the specified string representation of a number to an equivalent date and time, using the specified culture-specific formatting information.

public:
 static DateTime ToDateTime(System::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

Parametri

value
String String String String

Stringa che contiene una data e un'ora da convertire.A string that contains a date and time to convert.

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura.An object that supplies culture-specific formatting information.

Restituisce

Data e ora equivalenti al valore di value oppure data e ora equivalenti a MinValue se value è null.The date and time equivalent of the value of value, or the date and time equivalent of MinValue if value is null.

Eccezioni

value non è una stringa di data e ora formattata correttamente.value is not a properly formatted date and time string.

Esempi

Nell'esempio seguente vengono convertite le rappresentazioni di stringa ToDateTime dei valori di data IFormatProvider con il metodo utilizzando un oggetto.The following example converts string representations of date values with the ToDateTime method, using an IFormatProvider object.

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();
      }
   }
}
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

Commenti

Il valore restituito è il risultato della chiamata al DateTime.Parse(String, IFormatProvider) metodo su. valueThe return value is the result of invoking the DateTime.Parse(String, IFormatProvider) method on value.

providerè un' IFormatProvider istanza di che ottiene un DateTimeFormatInfo oggetto.provider is an IFormatProvider instance that obtains a DateTimeFormatInfo object. L' DateTimeFormatInfo oggetto fornisce informazioni specifiche delle impostazioni cultura relative al formato valuedi.The DateTimeFormatInfo object provides culture-specific information about the format of value. Se provider DateTimeFormatInfo è null, viene utilizzato l'oggetto per le impostazioni cultura correnti.If provider is null, the DateTimeFormatInfo for the current culture is used.

Se si preferisce non gestire un'eccezione se la conversione non riesce, è invece possibile chiamare DateTime.TryParse il metodo.If you prefer not to handle an exception if the conversion fails, you can call the DateTime.TryParse method instead. Restituisce un Boolean valore che indica se la conversione ha avuto esito positivo o negativo.It returns a Boolean value that indicates whether the conversion succeeded or failed.

Vedi anche

ToDateTime(UInt64) ToDateTime(UInt64) ToDateTime(UInt64) ToDateTime(UInt64)

Importante

Questa API non è conforme a CLS.

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

public:
 static DateTime ToDateTime(System::UInt64 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (ulong value);
static member ToDateTime : uint64 -> DateTime
Public Shared Function ToDateTime (value As ULong) As DateTime

Parametri

value
UInt64 UInt64 UInt64 UInt64

Intero senza segno a 64 bit da convertire.The 64-bit unsigned integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider) ToDateTime(Object, IFormatProvider)

Converte il valore dell'oggetto specificato in un oggetto DateTime mediante le informazioni di formattazione specifiche delle impostazioni cultura indicate.Converts the value of the specified object to a DateTime object, using the specified culture-specific formatting information.

public:
 static DateTime ToDateTime(System::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

Parametri

value
Object Object Object Object

Oggetto che implementa l'interfaccia IConvertible.An object that implements the IConvertible interface.

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura.An object that supplies culture-specific formatting information.

Restituisce

Data e ora equivalenti al valore di value oppure data e ora equivalenti a MinValue se value è null.The date and time equivalent of the value of value, or the date and time equivalent of MinValue if value is null.

Eccezioni

Valore di data e ora value non valido.value is not a valid date and time value.

value non implementa l'interfaccia IConvertible.value does not implement the IConvertible interface.

In alternativa-or- La conversione non è supportata.The conversion is not supported.

Esempi

Nell'esempio seguente viene definito un provider di formato CustomProviderpersonalizzato, GetFormat , il cui metodo genera un messaggio nella console che è stato richiamato e quindi restituisce DateTimeFormatInfo l'oggetto delle impostazioni cultura il cui nome è stato passato come parametro alla relativa classe. Costruttore.The following example defines a custom format provider, CustomProvider, whose GetFormat method outputs a message to the console that it has been invoked, and then returns the DateTimeFormatInfo object of the culture whose name was passed as a parameter to its class constructor. Ognuno di questi CustomProvider oggetti viene utilizzato per convertire gli elementi di una matrice di oggetti in valori di data e ora.Each of these CustomProvider objects is used to convert the elements in an object array to date and time values. L'output indica che l' CustomProvider oggetto viene utilizzato nella conversione solo quando il tipo value del parametro è String.The output indicates that the CustomProvider object is used in the conversion only when the type of the value parameter is a String.

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

Commenti

Il valore restituito è il risultato della chiamata al IConvertible.ToDateTime metodo del tipo sottostante di. valueThe return value is the result of invoking the IConvertible.ToDateTime method of the underlying type of value.

providerconsente all'utente di specificare le informazioni relative alla conversione specifiche delle impostazioni cultura valuerelative al contenuto di.provider enables the user to specify culture-specific conversion information about the contents of value. Se value , ad esempio, è String un oggetto che rappresenta una provider data, può fornire informazioni specifiche delle impostazioni cultura relative alla notazione utilizzata per rappresentare tale data.For example, if value is a String that represents a date, provider could supply culture-specific information about the notation used to represent that date. providerviene utilizzato per la conversione di value se il tipo di runtime value di è Stringo se value providerè un tipo definito dall'utente la cui IConvertible.ToDateTime implementazione utilizza.provider is involved in the conversion of value if the runtime type of value is a String, or if value is a user-defined type whose IConvertible.ToDateTime implementation makes use of provider. Se il tipo di runtime value di String è provider e nullè, CultureInfo viene utilizzato l'oggetto che rappresenta le impostazioni cultura del thread corrente.If the runtime type of value is String and provider is null, the CultureInfo object that represents the current thread culture is used.

Vedi anche

ToDateTime(SByte) ToDateTime(SByte) ToDateTime(SByte) ToDateTime(SByte)

Importante

Questa API non è conforme a CLS.

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

public:
 static DateTime ToDateTime(System::SByte value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (sbyte value);
static member ToDateTime : sbyte -> DateTime
Public Shared Function ToDateTime (value As SByte) As DateTime

Parametri

value
SByte SByte SByte SByte

Intero con segno a 8 bit da convertire.The 8-bit signed integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(UInt32) ToDateTime(UInt32) ToDateTime(UInt32) ToDateTime(UInt32)

Importante

Questa API non è conforme a CLS.

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws InvalidCastException.

public:
 static DateTime ToDateTime(System::UInt32 value);
[System.CLSCompliant(false)]
public static DateTime ToDateTime (uint value);
static member ToDateTime : uint32 -> DateTime
Public Shared Function ToDateTime (value As UInteger) As DateTime

Parametri

value
UInt32 UInt32 UInt32 UInt32

Intero senza segno a 32 bit da convertire.The 32-bit unsigned integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Object) ToDateTime(Object) ToDateTime(Object) ToDateTime(Object)

Converte il valore dell'oggetto specificato in un oggetto DateTime.Converts the value of the specified object to a DateTime object.

public:
 static DateTime ToDateTime(System::Object ^ value);
public static DateTime ToDateTime (object value);
static member ToDateTime : obj -> DateTime
Public Shared Function ToDateTime (value As Object) As DateTime

Parametri

value
Object Object Object Object

Oggetto che implementa l'interfaccia IConvertible oppure null.An object that implements the IConvertible interface, or null.

Restituisce

Data e ora equivalenti al valore di value oppure data e ora equivalenti a MinValue se value è null.The date and time equivalent of the value of value, or a date and time equivalent of MinValue if value is null.

Eccezioni

Valore di data e ora value non valido.value is not a valid date and time value.

value non implementa l'interfaccia IConvertible.value does not implement the IConvertible interface.

In alternativa-or- La conversione non è supportata.The conversion is not supported.

Esempi

Nell'esempio seguente viene chiamato ToDateTime(Object) il metodo con una varietà Object di variabili.The following example calls the ToDateTime(Object) method with a variety of Object variables.

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

Commenti

Affinché la conversione abbia esito positivo, il tipo di value runtime del parametro deve essere DateTime un o Stringun, value oppure deve nullessere.For the conversion to succeed, the runtime type of the value parameter must be either a DateTime or a String, or value must be null. In caso contrario, il metodo InvalidCastExceptiongenera un'eccezione.Otherwise, the method throws an InvalidCastException. Inoltre, se value è una stringa, deve contenere una rappresentazione valida di un valore di data e ora nelle impostazioni cultura correnti oppure viene generata FormatException un'eccezione.In addition, if value is a string, it must contain a valid representation of a date and time value in the current culture or a FormatException is thrown.

Il valore restituito è il risultato della chiamata al IConvertible.ToDateTime metodo del tipo sottostante di. valueThe return value is the result of invoking the IConvertible.ToDateTime method of the underlying type of value.

ToDateTime(Double) ToDateTime(Double) ToDateTime(Double) ToDateTime(Double)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Double Double Double Double

Valore a virgola mobile e con precisione doppia da convertire.The double-precision floating-point value to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Int32) ToDateTime(Int32) ToDateTime(Int32) ToDateTime(Int32)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Int32 Int32 Int32 Int32

Intero con segno a 32 bit da convertire.The 32-bit signed integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Boolean) ToDateTime(Boolean) ToDateTime(Boolean) ToDateTime(Boolean)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Boolean Boolean Boolean Boolean

Valore booleano da convertire.The Boolean value to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Byte) ToDateTime(Byte) ToDateTime(Byte) ToDateTime(Byte)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Byte Byte Byte Byte

Intero senza segno a 8 bit da convertire.The 8-bit unsigned integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Char) ToDateTime(Char) ToDateTime(Char) ToDateTime(Char)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Char Char Char Char

Carattere Unicode da convertire.The Unicode character to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Int64) ToDateTime(Int64) ToDateTime(Int64) ToDateTime(Int64)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Int64 Int64 Int64 Int64

Intero con segno a 64 bit da convertire.The 64-bit signed integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(Decimal) ToDateTime(Decimal) ToDateTime(Decimal) ToDateTime(Decimal)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Decimal Decimal Decimal Decimal

Numero da convertire.The number to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

ToDateTime(Int16) ToDateTime(Int16) ToDateTime(Int16) ToDateTime(Int16)

La chiamata di questo metodo genera sempre un'eccezione InvalidCastException.Calling this method always throws 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

Parametri

value
Int16 Int16 Int16 Int16

Intero con segno a 16 bit da convertire.The 16-bit signed integer to convert.

Restituisce

Questa conversione non è supportata.This conversion is not supported. Non vengono restituiti valori.No value is returned.

Eccezioni

Questa conversione non è supportata.This conversion is not supported.

Vedi anche

ToDateTime(DateTime) ToDateTime(DateTime) ToDateTime(DateTime) ToDateTime(DateTime)

Restituisce l'oggetto DateTime specificato; di fatto, non viene eseguita alcuna conversione.Returns the specified DateTime object; no actual conversion is performed.

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

Parametri

value
DateTime DateTime DateTime DateTime

Valore di data e ora.A date and time value.

Restituisce

value viene restituito invariato.value is returned unchanged.

Si applica a