Feedback

C# - TimeUtils.ToHumanReadableTimespan

Veröffentlicht von am 02.11.2015
(0 Bewertungen)
Konvertiert eine Zeitspanne von Millisekunden zu einer sinnvollen Größe mit Einheit.
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) - Komplett 

C# 2017/2015/2013 Grundlagen

Nach Abschluss des Kurses sind Ihnen die Datentypen und Klassenbibliotheken von C# bekannt. Außerdem sind Sie in der Lage, mit Variablen umzugehen und deren Typen zu konvertieren. Sie definieren Namespaces und setzen diese ein, Sie erstellen eigene Klassen  und bauen Trouble Shooting ein.


public static string ToHumanReadableTimespan(long miliseconds)
    {
        const int SEC = 1000;
        const int MIN = 60*SEC;
        const int H = MIN*60;

        var timeSpan = TimeSpan.FromMilliseconds(miliseconds);

        if (miliseconds < 1000) return string.Format("{0} ms", timeSpan.Milliseconds);

        if (miliseconds/SEC < 60) return string.Format("{0} sec", timeSpan.Seconds);

        if (miliseconds/MIN < 60) return string.Format("{0}:{1:00} min", timeSpan.Minutes, timeSpan.Seconds);

        if (miliseconds/H < 24) return string.Format("{0}:{1:00}:{2:00} hours", timeSpan.Hours, timeSpan.Minutes, timeSpan.Seconds);

        return string.Format("{0}:{1:00}:{2:00}:{3:00} days", timeSpan.Days, timeSpan.Hours, timeSpan.Minutes, timeSpan.Seconds);
    }
Abgelegt unter Zeit, Zeitspanne, lesbar.

1 Kommentare zum Snippet

Koopakiller schrieb am 02.12.2015:
Warum nimmst du nicht gleich ein TimeSpan entgegen? Wenn man eine Zeitspanne hat, dann hat man i.d.R. auch ein solches Objekt und nicht nur eine Zahl.
Außerdem, warum rufst du nicht einfach ToString mit dem String-Format Parameter auf? Das ist meiner Meinung nach einfacher zu lesen.
 

Logge dich ein, um hier zu kommentieren!