Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les informations de fuseau horaire précises requises par une application peuvent ne pas être présentes sur un système particulier pour plusieurs raisons :
Le fuseau horaire n’a jamais été défini dans le registre du système local.
Les données relatives au fuseau horaire ont été modifiées ou supprimées du Registre.
Le fuseau horaire existe mais n’a pas d’informations précises sur les ajustements de fuseau horaire pour une période historique particulière.
Dans ces cas, vous pouvez appeler la CreateCustomTimeZone méthode pour définir le fuseau horaire requis par votre application. Vous pouvez utiliser les surcharges de cette méthode pour créer un fuseau horaire avec ou sans règles d’ajustement. Si le fuseau horaire prend en charge l’heure d’été, vous pouvez définir des ajustements avec des règles d’ajustement fixes ou flottantes. (Pour connaître les définitions de ces termes, consultez la section « Terminologie des fuseaux horaires » dans la vue d’ensemble du fuseau horaire.)
Important
Les fuseaux horaires personnalisés créés en appelant la CreateCustomTimeZone méthode ne sont pas ajoutés au Registre. Au lieu de cela, ils sont accessibles uniquement via la référence d’objet retournée par l’appel CreateCustomTimeZone de méthode.
Cette rubrique montre comment créer un fuseau horaire sans règles d’ajustement. Pour créer un fuseau horaire qui prend en charge les règles d’ajustement de l’heure d’été, consultez Comment : créer des fuseaux horaires avec des règles d’ajustement.
Pour créer un fuseau horaire sans règles d’ajustement
Définissez le nom d’affichage du fuseau horaire.
Le nom d’affichage suit un format assez standard dans lequel le décalage du fuseau horaire par rapport au temps universel coordonné (UTC) est placé entre parenthèses et est suivi d’une chaîne qui identifie le fuseau horaire, une ou plusieurs des villes du fuseau horaire, ou un ou plusieurs des pays ou régions du fuseau horaire.
Définissez le nom de l’heure standard du fuseau horaire. En règle générale, cette chaîne est également utilisée comme identificateur du fuseau horaire.
Si vous souhaitez utiliser un identificateur différent du nom standard du fuseau horaire, définissez l’identificateur de fuseau horaire.
Instanciez un TimeSpan objet qui définit le décalage du fuseau horaire par rapport à l’heure UTC. Les fuseaux horaires avec des heures antérieures à UTC ont un décalage positif. Les fuseaux horaires avec des heures antérieures à UTC ont un décalage négatif.
Appelez la TimeZoneInfo.CreateCustomTimeZone(String, TimeSpan, String, String) méthode pour instancier le nouveau fuseau horaire.
Exemple
L’exemple suivant définit un fuseau horaire personnalisé pour Mawson, l’Antarctique, qui n’a pas de règles d’ajustement.
string displayName = "(GMT+06:00) Antarctica/Mawson Time";
string standardName = "Mawson Time";
TimeSpan offset = new(06, 00, 00);
TimeZoneInfo mawson = TimeZoneInfo.CreateCustomTimeZone(standardName, offset, displayName, standardName);
Console.WriteLine($"The current time is {TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.Local, mawson)} {mawson.StandardName}");
Dim displayName As String = "(GMT+06:00) Antarctica/Mawson Time"
Dim standardName As String = "Mawson Time"
Dim offset As TimeSpan = New TimeSpan(06, 00, 00)
Dim mawson As TimeZoneInfo = TimeZoneInfo.CreateCustomTimeZone(standardName, offset, displayName, standardName)
Console.WriteLine("The current time is {0} {1}", _
TimeZoneInfo.ConvertTime(Date.Now, TimeZoneInfo.Local, mawson), _
mawson.StandardName)
La chaîne affectée à la DisplayName propriété suit un format standard dans lequel le décalage du fuseau horaire UTC est suivi d’une description claire du fuseau horaire.
Compilation du code
Cet exemple nécessite :
Que les espaces de noms suivants soient importés :
using System.Collections.Generic;Imports System.Collections.Generic Imports System.Collections.ObjectModel
Voir également
- Dates, heures et fuseaux horaires
- Vue d’ensemble du fuseau horaire
- Comment : créer des fuseaux horaires avec des règles d’ajustement