Ceci est le tout premier article consacré à la programmation avec le Framework .NET.
Tous les codes donnés sont écrits en C#, mais peuvent être aisément convertis dans n’importe quel autre langage .NET de votre choix (VB.NET, C++/CLI, etc).
Préambule
On commence en douceur avec un snippet permettant de convertir un timestamp POSIX en date traditionnelle 😉
C’est toujours pratique de l’avoir sous le coude au cas où !
Qu’est-ce qu’un « timestamp POSIX » au fait ? C’est un nombre entier (codé sur 32 bits) représentant le nombre de secondes écoulées depuis le 1er janvier 1970 00:00:00 UTC, comme décrit dans la norme POSIX.
Code
Ce snippet convertit ce timestamp sous forme de chaîne de caractères représentant l’équivalent en date et heure locales :
String POSIXTimestampToDate(String timestamp)
{
DateTime date = new DateTime(1970, 1, 1, 0, 0, 0);
date = date.AddSeconds(Double.Parse(timestamp)).ToLocalTime();
return date.ToString();
}
Exemple
En bonus et en guise d’exemple, voici comment extraire la date d’installation de Windows en utilisant ce snippet (en effet, celle-ci est stockée dans le registre sous la forme d’un timestamp POSIX) :
using Microsoft.Win32;
String GetSystemInstallDate()
{
String data = Registry.GetValue("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion", "InstallDate", "").ToString();
return POSIXTimestampToDate(data);
}
