Datas, horas e fusos horáriosDates, times, and time zones

Além da estrutura DateTime básica, o .NET fornece as seguintes classes que dão suporte para trabalhar com fusos horários:In addition to the basic DateTime structure, .NET provides the following classes that support working with time zones:

  • TimeZone

    Use esta classe para trabalhar com o fuso horário local do sistema e a zona UTC (Tempo Universal Coordenado).Use this class to work with the system's local time zone and the Coordinated Universal Time (UTC) zone. A funcionalidade da TimeZone classe é amplamente substituída pela TimeZoneInfo classe.The functionality of the TimeZone class is largely superseded by the TimeZoneInfo class.

  • TimeZoneInfo

    Use essa classe para trabalhar com qualquer fuso horário que esteja predefinido em um sistema, para criar novos fusos horários e para converter facilmente datas e horas de um fuso horário para outro.Use this class to work with any time zone that is predefined on a system, to create new time zones, and to easily convert dates and times from one time zone to another. Para novos desenvolvimentos, use a classe TimeZoneInfo em vez da classe TimeZone.For new development, use the TimeZoneInfo class instead of the TimeZone class.

  • DateTimeOffset

    Use essa estrutura para trabalhar com datas e horas cujo deslocamento (ou diferença) em relação ao horário UTC é conhecido.Use this structure to work with dates and times whose offset (or difference) from UTC is known. A estrutura DateTimeOffset combina um valor de data e hora com o deslocamento desse horário em relação ao UTC.The DateTimeOffset structure combines a date and time value with that time's offset from UTC. Devido à sua relação com o UTC, um valor individual de data e hora identifica, sem ambiguidade um único ponto no tempo.Because of its relationship to UTC, an individual date and time value unambiguously identifies a single point in time. Isso aumenta a portabilidade de um computador para outro de um valor de DateTimeOffset em relação a um valor de DateTime.This makes a DateTimeOffset value more portable from one computer to another than a DateTime value.

Esta seção da documentação fornece as informações de que você precisa para trabalhar com fusos horários e para criar aplicativos com reconhecimento de fuso horário que podem converter datas e horas de um fuso horário para outro.This section of the documentation provides the information that you need to work with time zones and to create time zone-aware applications that can convert dates and times from one time zone to another.

Nesta seçãoIn this section

Visão geral sobre fuso horário Aborda a terminologia, os conceitos e as questões envolvidas na criação de aplicativos com reconhecimento de fuso horário.Time zone overview Discusses the terminology, concepts, and issues involved in creating time zone-aware applications.

Escolhendo entre DateTime, DateTimeOffset, TimeSpan e TimeZoneInfo Discute quando usar os DateTime DateTimeOffset tipos, e TimeZoneInfo ao trabalhar com dados de data e hora.Choosing between DateTime, DateTimeOffset, TimeSpan, and TimeZoneInfo Discusses when to use the DateTime, DateTimeOffset, and TimeZoneInfo types when working with date and time data.

Encontrando os fusos horários definidos em um sistema local Descreve como enumerar os fusos horários encontrados em um sistema local.Finding the time zones defined on a local system Describes how to enumerate the time zones found on a local system.

Como enumerar os fusos horários presentes em um computador Fornece exemplos que enumeram os fusos horários definidos no Registro de um computador e que permitem que os usuários selecionem um fuso horário predefinido em uma lista.How to: Enumerate time zones present on a computer Provides examples that enumerate the time zones defined in a computer's registry and that let users select a predefined time zone from a list.

Como acessar os objetos de fuso horário UTC e local predefinidos Descreve como acessar o Tempo Universal Coordenado e o fuso horário local.How to: Access the predefined UTC and local time zone objects Describes how to access Coordinated Universal Time and the local time zone.

Como criar uma instância de um objeto TimeZoneInfo Descreve como criar uma instância de um objeto TimeZoneInfo do Registro do sistema local.How to: Instantiate a TimeZoneInfo object Describes how to instantiate a TimeZoneInfo object from the local system registry.

Criando uma instância de um objeto DateTimeOffset Discute as maneiras de criar uma instância de um objeto DateTimeOffset e maneiras de converter um valor DateTime em um valor DateTimeOffset.Instantiating a DateTimeOffset object Discusses the ways in which a DateTimeOffset object can be instantiated, and the ways in which a DateTime value can be converted to a DateTimeOffset value.

Como criar fusos horários sem regras de ajuste Descreve como criar um fuso horário personalizado sem suporte para transição de/para o horário de verão.How to: Create time zones without adjustment rules Describes how to create a custom time zone that does not support the transition to and from daylight saving time.

Como criar fusos horários com regras de ajuste Descreve como criar um fuso horário personalizado com suporte a uma ou mais transições de/para o horário de verão.How to: Create time zones with adjustment rules Describes how to create a custom time zone that supports one or more transitions to and from daylight saving time.

Salvando e restaurando fusos horários Descreve o suporte de TimeZoneInfo para serialização e desserialização dos dados de fuso horário e ilustra alguns dos cenários nos quais esses recursos podem ser usados.Saving and restoring time zones Describes TimeZoneInfo support for serialization and deserialization of time zone data and illustrates some of the scenarios in which these features can be used.

Como salvar fusos horários em um recurso inserido Descreve como criar um fuso horário personalizado e salvar suas informações em um arquivo de recurso.How to: Save time zones to an embedded resource Describes how to create a custom time zone and save its information in a resource file.

Como restaurar fusos horários de um recurso inserido Descreve como criar instâncias de fusos horários personalizados que foram salvos em um arquivo de recurso inserido.How to: Restore time zones from an embedded resource Describes how to instantiate custom time zones that have been saved to an embedded resource file.

Executando operações aritméticas com datas e horas Discute os problemas envolvidos ao adicionar, subtrair e comparar valores DateTime e DateTimeOffset.Performing arithmetic operations with dates and times Discusses the issues involved in adding, subtracting, and comparing DateTime and DateTimeOffset values.

Como usar fusos horários em aritmética de data e hora Descreve como realizar uma aritmética de data e hora que reflita as regras de ajuste de um fuso horário.How to: Use time zones in date and time arithmetic Discusses how to perform date and time arithmetic that reflects a time zone's adjustment rules.

Convertendo entre DateTime e DateTimeOffset Descreve como converter entre valores DateTime e DateTimeOffset.Converting between DateTime and DateTimeOffset Describes how to convert between DateTime and DateTimeOffset values.

Convertendo horários entre fusos horários Descreve como converter horários de um fuso horário para outro.Converting times between time zones Describes how to convert times from one time zone to another.

Como resolver horários ambíguos Descreve como resolver um horário ambíguo, mapeando-o para o horário padrão do fuso horário.How to: Resolve ambiguous times Describes how to resolve an ambiguous time by mapping it to the time zone's standard time.

Como permitir que os usuários resolvam horários ambíguos Descreve como permitir que um usuário determine o mapeamento entre uma hora local ambígua e o Tempo Universal Coordenado.How to: Let users resolve ambiguous times Describes how to let a user determine the mapping between an ambiguous local time and Coordinated Universal Time.

ReferênciaReference

System.TimeZoneInfo