Horas y zonas horarias

Actualización: noviembre 2007

Además de la estructura de DateTime básica, .NET Framework proporciona las clases siguientes que permiten trabajar con zonas horarias:

  • TimeZone

    Utilice esta clase para trabajar con la zona horaria local del sistema y la zona horaria universal coordinada (hora UTC). La funcionalidad de la clase TimeZone ha sido sustituida en buena parte por la clase TimeZoneInfo.

  • TimeZoneInfo

    Utilice esta clase para trabajar con cualquier zona horaria que esté predefinida en un sistema, para crear nuevas zonas horarias y para convertir fácilmente las fechas y horas de una zona horaria a otra. En desarrollos nuevos, utilice la clase TimeZoneInfo en lugar de la clase TimeZone.

  • DateTimeOffset

    Utilice esta estructura para trabajar con las fechas y horas que tienen un desfase (o diferencia) conocido respecto a la hora UTC. La estructura de DateTimeOffset combina un valor de fecha y hora con ese desfase temporal respecto a la hora UTC. Debido a su relación con la hora UTC, cada valor de fecha y hora identifica de forma inequívoca un punto único en el tiempo. Esto hace que un valor DateTimeOffset sea más fácil de transferir de un equipo a otro que un valor DateTime.

En esta sección se proporciona la información necesaria para trabajar con zonas horarias y para crear aplicaciones sensibles a la zona horaria que pueden convertir fechas y horas de una zona a otra.

En esta sección

Información general sobre zonas horarias

Explica la terminología, los conceptos y los problemas que surgen al crear aplicaciones sensibles a la zona horaria.

Elegir entre DateTime, DateTimeOffset y TimeZoneInfo

Explica cuándo deben utilizarse los tipos DateTime, DateTimeOffset y TimeZoneInfo al trabajar con datos de fecha y hora.

Buscar las zonas horarias definidas en un sistema local

Describe cómo se enumeran las zonas horarias que se encuentran en un sistema local.

Cómo: Enumerar zonas horarias presentes en un equipo

Proporciona ejemplos en los que se enumeran las zonas horarias definidas en el Registro de un equipo y en los que se permite a los usuarios seleccionar una zona horaria predefinida en una lista.

Cómo: Obtener acceso a los objetos de zona horaria local y UTC predefinidos

Describe cómo se obtiene acceso a la hora universal coordinada y a la zona horaria local.

Cómo: Crear instancias de un objeto TimeZoneInfo

Describe cómo se crean instancias de un objeto TimeZoneInfo a partir del Registro del sistema local.

Crear instancias de un objeto DateTimeOffset

Discute los mecanismos mediante los que se pueden crear instancias de un objeto DateTimeOffset y las formas en las que un valor DateTime se puede convertir en un valor DateTimeOffset.

Cómo: Crear zonas horarias sin reglas de ajuste

Describe cómo se crea una zona horaria personalizada que no admite la transición del horario de verano al horario estándar y viceversa.

Cómo: Crear zonas horarias con reglas de ajuste

Describe cómo se crea una zona horaria personalizada que admita una o varias transiciones del horario de verano al horario estándar y viceversa.

Guardar y restaurar zonas horarias

Describe la compatibilidad de TimeZoneInfo para la serialización y deserialización de datos de zona horaria y muestra algunos de los escenarios en los que se pueden utilizar.

Cómo: Guardar zonas horarias en un recurso incrustado

Describe cómo se crea una zona horaria personalizada y se guarda su información en un archivo de recursos.

Cómo: Restaurar zonas horarias de un recurso incrustado

Describe cómo se crean instancias de zonas horarias personalizadas que se han guardado en un archivo de recursos incrustado.

Efectuar operaciones aritméticas con fechas y horas

Explica los problemas que surgen al sumar, restar y comparar valores DateTime y DateTimeOffset.

Cómo: Utilizar zonas horarias en aritmética de fecha y hora

Analiza cómo se realizan operaciones aritméticas de fecha y hora que reflejen las reglas de ajuste de una zona horaria.

Convertir entre DateTime y DateTimeOffset

Describe cómo se realiza la conversión entre valores DateTime y DateTimeOffset.

Convertir horas entre zonas horarias

Describe cómo se convierte una hora de una zona horaria a otra.

Cómo: Resolver horas ambiguas

Describe cómo se resuelve una hora ambigua asignándola a la hora estándar de la zona horaria.

Cómo: Permitir que los usuarios resuelvan horas ambiguas

Describe cómo se le puede permitir a un usuario determinar la correspondencia entre una hora local ambigua y la hora universal coordinada.

Referencia

TimeZoneInfo