Documentation développeur
C#
Mis à jour le 19 septembre 2026

Timestamp Unix et Epoch en C#

Générez et convertissez des timestamps Unix en secondes et millisecondes en C#.

Le temps Unix compte le temps écoulé depuis l’époque Unix, le 1er janvier 1970 à 00:00:00 UTC. Les écosystèmes n’utilisent pas toujours la même unité : indiquez explicitement secondes, millisecondes, microsecondes ou nanosecondes.

Démarrage rapide#

L’exemple suivant utilise l’API standard de C# ou une bibliothèque couramment utilisée pour cette tâche.

Exemple#

C#
1DateTimeOffset now = DateTimeOffset.UtcNow;2long seconds = now.ToUnixTimeSeconds();3long milliseconds = now.ToUnixTimeMilliseconds();45Console.WriteLine(seconds);6Console.WriteLine(milliseconds);

Opérations courantes#

Ce second exemple couvre une opération fréquente en production ou une manière plus sûre de traiter des entrées réelles.

Variante courante#

C#
1DateTimeOffset fromSeconds = DateTimeOffset.FromUnixTimeSeconds(epochSeconds);2DateTimeOffset fromMilliseconds = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds);34Console.WriteLine(fromSeconds.ToString("O"));

Points importants#

Indiquez toujours l’unité du timestamp et utilisez UTC pour l’échange entre systèmes ; appliquez un fuseau nommé seulement lors de l’affichage ou des règles métier.

Bonnes pratiques#

  1. Considérez toute entrée externe comme non fiable et gérez explicitement les erreurs d’analyse ou de validation.
  2. Rendez explicites l’encodage, les unités, les formats et les conventions propres aux bibliothèques aux frontières du système.
  3. Ajoutez des tests couvrant l’entrée vide, le texte Unicode, les entrées invalides et des données représentatives de la production.

Références#

Implémenter Unix Timestamp dans d'autres langages :