Qu'est-ce que la conversion de fuseau horaire ?
Un convertisseur de fuseau horaire traduit une date et une heure d'un fuseau vers un autre, vous permettant de voir instantanément l'heure équivalente n'importe où dans le monde. Le monde est divisé en 24 fuseaux horaires principaux, chacun défini comme un décalage fixe par rapport au Temps Universel Coordonné (UTC). Lorsqu'il est 14h00 UTC, il est 09h00 à Paris (UTC+1) et 23h00 à Tokyo (UTC+9). Convertir correctement entre fuseaux horaires requiert de connaître le décalage UTC des zones source et cible, et si l'heure d'été (DST) est en vigueur dans l'une ou l'autre.
La base de données de fuseaux horaires IANA (souvent appelée base Olson ou base tz) est la source de référence des définitions de fuseaux utilisée par les systèmes d'exploitation, les langages de programmation et les navigateurs web. Elle attribue un identifiant canonique à chaque zone au format Région/Ville, comme America/New_York ou Asia/Tokyo. Contrairement aux abréviations fixes telles que EST ou PST, les identifiants IANA encodent l'historique complet des changements de décalage UTC et des transitions DST pour chaque région, ce qui en fait le seul moyen fiable de convertir l'heure sur des dates passées ou futures.
Ce convertisseur de fuseau horaire utilise les données IANA intégrées au moteur JavaScript de votre navigateur via l'API Intl. Vous sélectionnez un fuseau source, saisissez une date et une heure, et l'outil calcule immédiatement l'heure équivalente dans le fuseau cible, en tenant compte des ajustements liés à l'heure d'été. Comme il fonctionne entièrement dans votre navigateur, il n'y a pas d'aller-retour serveur et aucune donnée ne quitte votre appareil.
Pourquoi utiliser ce convertisseur de fuseau horaire ?
Les calculs de fuseaux horaires manuels sont sujets à erreurs, surtout quand l'heure d'été entre en jeu. Une ville qui est à UTC+1 en janvier peut être à UTC+2 en juillet, et les dates de transition varient selon les pays. Les États-Unis et l'Europe changent leurs horloges des dimanches différents, créant une fenêtre de deux semaines durant laquelle le décalage entre New York et Paris diffère du reste de l'année. Cet outil gère automatiquement toutes ces transitions grâce à la même base de données IANA qu'utilise votre système d'exploitation.
Cas d'usage du convertisseur de fuseau horaire
Référence des fuseaux horaires IANA
La base de données de fuseaux horaires IANA définit plus de 400 identifiants et est mise à jour plusieurs fois par an pour tenir compte des changements politiques, des nouvelles règles DST et des corrections historiques. Le tableau ci-dessous liste les fuseaux les plus couramment utilisés avec leurs décalages UTC standard et leur comportement DST. Les décalages indiqués sont pour l'heure standard ; la colonne DST indique le décalage ajusté lorsque l'heure d'été est active pour cette région.
| Identifiant IANA | Nom courant | Décalage UTC | DST |
|---|---|---|---|
| UTC | Coordinated Universal Time | +00:00 | No |
| America/New_York | Eastern Time (US) | -05:00 | Yes (EDT -04:00) |
| America/Chicago | Central Time (US) | -06:00 | Yes (CDT -05:00) |
| America/Denver | Mountain Time (US) | -07:00 | Yes (MDT -06:00) |
| America/Los_Angeles | Pacific Time (US) | -08:00 | Yes (PDT -07:00) |
| Europe/London | Greenwich Mean Time | +00:00 | Yes (BST +01:00) |
| Europe/Berlin | Central European Time | +01:00 | Yes (CEST +02:00) |
| Europe/Moscow | Moscow Time | +03:00 | No |
| Asia/Dubai | Gulf Standard Time | +04:00 | No |
| Asia/Kolkata | India Standard Time | +05:30 | No |
| Asia/Shanghai | China Standard Time | +08:00 | No |
| Asia/Tokyo | Japan Standard Time | +09:00 | No |
| Australia/Sydney | Australian Eastern Time | +10:00 | Yes (AEDT +11:00) |
| Pacific/Auckland | New Zealand Standard Time | +12:00 | Yes (NZDT +13:00) |
Exemples de code
Chaque langage de programmation majeur offre la conversion de fuseau horaire via la base de données IANA. Les exemples ci-dessous montrent comment convertir un horodatage UTC vers d'autres fuseaux en JavaScript via l'API Intl, Python via le module zoneinfo, Go via le package time, et la commande GNU date pour les scripts shell.
// Convert a date from one timezone to another
const date = new Date('2026-03-15T09:00:00Z')
// Format in specific timezone
const nyTime = date.toLocaleString('en-US', { timeZone: 'America/New_York' })
// → "3/15/2026, 5:00:00 AM"
const tokyoTime = date.toLocaleString('en-US', { timeZone: 'Asia/Tokyo' })
// → "3/15/2026, 6:00:00 PM"
// Get the UTC offset for a timezone programmatically
function getUtcOffset(tz: string, date = new Date()) {
const fmt = new Intl.DateTimeFormat('en-US', {
timeZone: tz,
timeZoneName: 'longOffset',
})
const parts = fmt.formatToParts(date)
return parts.find(p => p.type === 'timeZoneName')?.value ?? ''
}
getUtcOffset('Asia/Kolkata') // → "GMT+05:30"from datetime import datetime
from zoneinfo import ZoneInfo
# Create a timezone-aware datetime
dt = datetime(2026, 3, 15, 9, 0, tzinfo=ZoneInfo('UTC'))
# Convert to New York time
ny = dt.astimezone(ZoneInfo('America/New_York'))
print(ny) # → 2026-03-15 05:00:00-04:00 (EDT in March)
# Convert to Tokyo time
tokyo = dt.astimezone(ZoneInfo('Asia/Tokyo'))
print(tokyo) # → 2026-03-15 18:00:00+09:00
# Get current time in any timezone
now_berlin = datetime.now(ZoneInfo('Europe/Berlin'))
print(now_berlin.strftime('%Y-%m-%d %H:%M %Z')) # → 2026-03-15 10:00 CETpackage main
import (
"fmt"
"time"
)
func main() {
utc := time.Date(2026, 3, 15, 9, 0, 0, 0, time.UTC)
// Load timezone by IANA name
ny, _ := time.LoadLocation("America/New_York")
tokyo, _ := time.LoadLocation("Asia/Tokyo")
fmt.Println(utc.In(ny)) // → 2026-03-15 05:00:00 -0400 EDT
fmt.Println(utc.In(tokyo)) // → 2026-03-15 18:00:00 +0900 JST
// Get the UTC offset in seconds
_, offset := utc.In(ny).Zone()
fmt.Printf("UTC offset: %+d hours\n", offset/3600) // → UTC offset: -4 hours
}# Display current time in a specific timezone TZ='Asia/Tokyo' date '+%Y-%m-%d %H:%M:%S %Z' # → 2026-03-15 18:00:00 JST # Convert a UTC timestamp to another timezone TZ='America/Los_Angeles' date -d '2026-03-15T09:00:00Z' '+%Y-%m-%d %H:%M %Z' # → 2026-03-15 02:00 PDT # List all available IANA timezone names timedatectl list-timezones | head -20