Date (Tipo de datos, Visual Basic)

Contiene valores IEEE de 64 bits (8 bytes) que representan fechas comprendidas entre el 1 de enero del año 0001 y el 31 de diciembre de 9999, y horas comprendidas entre las 0:00:00 (medianoche) y las 11:59:59. Cada incremento representa 100 nanosegundos de tiempo transcurrido desde el comienzo del 1 de enero del año 1 del calendario gregoriano. El valor máximo representa 100 nanosegundos antes del comienzo del 1 de enero del año 10000.

Comentarios

Utilice el tipo de datos Date para albergar valores de fecha, valores de tiempo o valores de fecha y hora.

El valor predeterminado de Date es 0:00:00 (medianoche) del 1 de enero de 0001.

Puede obtener la fecha y hora actual de la clase DateAndTime.

Requisitos de formato

Debe incluir un literal Date dentro de los signos de número (# #). Debe especificar el valor de fecha en el formato M/d/yyyy, por ejemplo #5/31/1993#. Este requisito es independiente de la configuración regional y de la configuración de formato de fecha y hora del equipo.

El motivo de esta restricción es que el significado del código nunca debe cambiar en función de la configuración regional en que se ejecuta la aplicación. Suponga que codifica un literal Date de #3/4/1998# y piensa que signifique el 4 de marzo de 1998. En una configuración regional que use el formato mm/dd/aaaa, 3/4/1998 se compila como desee. Pero suponga que implementa la aplicación en varios países. En una configuración regional que use el formato dd/mm/aaaa, el literal incluido en el código se compilará como April 3, 1998. En una configuración local que utilice el formato aaaa/mm/dd, el literal no sería válido (April 1998, 0003) y generaría un error de compilación.

Soluciones

Para convertir un literal de tipo Date al formato de la configuración regional o a un formato personalizado, proporcione el literal a la función Format especificando un formato de fecha predefinido o especificado por el usuario. En el siguiente ejemplo se muestra cómo.

MsgBox("The formatted date is " & Format(#5/31/1993#, "dddd, d MMM yyyy"))

Si lo desea, puede utilizar también uno de los constructores sobrecargados de la estructura DateTime para ensamblar un valor de fecha y hora. En el ejemplo siguiente se crea un valor para representar Mayo 31, 1993 a las 12:14 del mediodía.

Dim dateInMay As New System.DateTime(1993, 5, 31, 12, 14, 0)

Formato de hora

Puede especificar el valor de hora con un formato de 12 horas o de 24 horas, por ejemplo #1:15:30 PM# o #13:15:30#. Sin embargo, si no especifica los minutos ni los segundos, debe especificar a.m. o p.m.

Valores predeterminados de fecha y hora

Si no incluye una fecha en un literal de fecha y hora, Visual Basic establecerá la parte del valor correspondiente a la fecha en el 1 de enero de 0001. Si no incluye una hora en un literal de fecha y hora, Visual Basic establecerá la parte del valor correspondiente a la hora en el comienzo del día, es decir, medianoche (0:00:00)

Conversiones de tipo

Si convierte un valor Date al tipo String, Visual Basic representa la fecha en función del formato corto de fecha especificado por la configuración regional en tiempo de ejecución, y representa la hora de acuerdo con el formato de hora (12 o 24 horas) especificado por la configuración regional en tiempo de ejecución.

Sugerencias de programación

  • Consideraciones de interoperabilidad. Si está interactuando con componentes que no se han escrito para .NET Framework, por ejemplo objetos de automatización u objetos COM, tenga presente que los tipos de fecha y hora definidos en otros entornos no son compatibles con el tipo Date de Visual Basic. Al transferir un argumento de fecha y hora a un componente de este tipo, declárelo como Double en lugar de Date en el nuevo código de Visual Basic, y utilice los métodos de conversión DateTime.FromOADate y DateTime.ToOADate.

  • Caracteres de tipo. Date no tiene caracteres de tipo literal ni caracteres de tipo identificador. Sin embargo, el compilador trata los literales incluidos entre caracteres de signo de número (# #) como Date.

  • Tipo en Framework. El tipo correspondiente en .NET Framework es la estructura DateTime.

Ejemplo

Una variable o constante del tipo de datos Date contiene tanto la fecha como la hora. Esto se ilustra en el siguiente ejemplo:

Dim someDateAndTime As Date = #8/13/2002 12:14 PM#

Vea también

Referencia

Resumen de tipos de datos (Visual Basic)

DateTime

Funciones de conversión de tipos (Visual Basic)

Resumen de conversión (Visual Basic)

Conceptos

Cadenas con formato de fecha y hora estándar

Cadenas de formato de fecha y hora personalizadas

Uso eficiente de tipos de datos (Visual Basic)