Maison >développement back-end >C++ >Comment convertir l'heure d'époque en temps réel en C# ?

Comment convertir l'heure d'époque en temps réel en C# ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-26 08:01:14797parcourir

How to Convert Epoch Time to Real Time in C#?

Méthodes de conversion du temps d'époque C# en temps réel

Ce guide montre comment convertir l'heure d'une époque Unix (secondes depuis le 1er janvier 1970, UTC) en une date et une heure lisibles en C#. Plusieurs approches s'adaptent à différentes versions de .NET.

.NET moderne (Core >= 2.1 et versions ultérieures) :

La méthode la plus simple exploite les fonctions intégrées :

<code class="language-csharp">DateTime realTime = DateTime.UnixEpoch.AddSeconds(epochSeconds); // For seconds
DateTime realTimeMillis = DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds); // For milliseconds</code>

Utilisation de DateTimeOffset (recommandé depuis 2020) :

DateTimeOffset offre une gestion améliorée des fuseaux horaires :

<code class="language-csharp">DateTimeOffset realTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds); // For seconds
DateTimeOffset realTimeOffsetMillis = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds); // For milliseconds

DateTime realTime = realTimeOffset.DateTime; // Extract DateTime if needed</code>

Pour les anciennes versions de .NET (avant 2020) :

Pour les anciens frameworks .NET dépourvus des méthodes ci-dessus, une fonction personnalisée est nécessaire :

<code class="language-csharp">private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);

public static DateTime FromUnixTime(long unixTime)
{
    return epoch.AddSeconds(unixTime);
}</code>

Cette fonction ajoute le unixTime donné (en secondes) à l'époque Unix, ce qui donne un objet DateTime représentant le temps réel. N'oubliez pas de gérer les exceptions potentielles (par exemple, ArgumentOutOfRangeException).

Choisissez la méthode la plus appropriée pour votre version .NET. DateTimeOffset est généralement préféré pour sa précision améliorée et sa connaissance du fuseau horaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn