C# TimeStamp : comment passer de timestamp à datetime (fuseau horaire compris).
Bonjour, aujourd'hui je vais vous présenter une des solutions pour obtenir une datetime à partir d'un timestamp unix.
Nous allons avoir un timestamp (long) : 1460379633 //qui représente le 11/4/2016 à 15:00:33
Pour prendre en compte le fuseau horaire, il faut déjà le définir (pour le fuseau Europe j'utilise l'id "E. Europe Standard Time"). Vous pouvez bien sur rechercher les différents ids disponibles. liste d'aide pour les timezoneids : ici
Voici le code :
Nous allons ensuite appeler une methode de conversion du timestamp :
Voici la methode à créer :
dateTime est alors égal à 11/4/2016 à 13:00:33. Le fuseau horaire n'ayant pas encore été pris en compte, il y à un décalage de deux heure dans mon cas.
Pour y remédier, nous allons utiliser la variable timeZoneInfo défini plus haut pour gérer le décalage du fuseau horaire.
dateTimeEurope vos alors 11/4/2016 à 15:00:33.
Cette méthode peut être améliorée avec notamment une détection automatique par code du fuseau horaire de la machine qui l'exécute.
A bientôt et bon code.