Encontrando os fusos horários definidos em um sistema local

A classe TimeZoneInfo não expõe um construtor público. Como resultado, a palavra-chave new não pode ser usada para criar um novo objeto TimeZoneInfo. Em vez disso, uma instância dos objetos TimeZoneInfo é criada recuperando informações sobre fusos horários predefinidos do registro ou criando um fuso horário personalizado. Este tópico discute criação de instância de um fuso horário a partir dos dados armazenados no registro. Além disso, as propriedades static (shared no Visual Basic) da classe TimeZoneInfo fornecem acesso ao UTC (Tempo Universal Coordenado) e ao fuso horário local.

Observação

Para fusos horários que não são definidos no registro, você pode criar fusos horários personalizados chamando as sobrecargas do método CreateCustomTimeZone. A criação de um fuso horário personalizado é discutida nos tópicos Como: criar fusos horários sem regras de ajuste e Como: criar fusos horários com regras de ajuste. Além disso, você pode criar uma instância de um objeto TimeZoneInfo restaurando-o de uma cadeia de caracteres serializada com o método FromSerializedString. A serialização e a desserialização de um objeto TimeZoneInfo são discutidas nos tópicos Como: salvar fusos horários em um recurso inserido e Como: restaurar fusos horários de um recurso inserido.

Acessar fusos horários individuais

A classe TimeZoneInfo fornece dois objetos de fuso horário predefinidos que representam o horário UTC e o fuso horário local. Eles estão disponíveis nas propriedades Utc e Local, respectivamente. Para obter instruções sobre como acessar o UTC ou fusos horários locais, veja Como: acessar os objetos de UTC e fuso horário local predefinidos.

Você também pode criar uma instância de um objeto TimeZoneInfo que representa qualquer fuso horário definido pelo registro. Para obter instruções sobre como instanciar um objeto de fuso horário específico, veja Como: criar uma instância de um objeto TimeZoneInfo.

Identificadores de fuso horário

O identificador do fuso horário é um campo de chave que identifica exclusivamente o fuso horário. Enquanto a maioria das chaves são relativamente curtas, o identificador de fuso horário é comparativamente longo. Na maioria dos casos, seu valor corresponde ao da propriedade TimeZoneInfo.StandardName, que é usada para fornecer o nome da hora padrão do fuso horário. No entanto, há exceções. A melhor maneira de certificar-se de que você forneça um identificador válido é enumerar os fusos horários disponíveis no sistema e observar os identificadores associados.

Confira também