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) für Administratoren - Kompakt

Nach dieser Schulung beherrschen Sie die Grundlagen des TFS. Sie erledigen administrative Aufgaben schnell und sicher.

VB.NET 2017/2015/2013 Einführung

Das Seminar befähigt Sie zur eigenständigen Entwicklung von anwenderorientierten Programmen in VB.NET, worin auch der Einsatz von Datenbanken enthalten ist.


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!