Konvertiere eine Zeit in eine formatierte Zeichenkette in C #

7

Time.ToString("0.0") wird anstelle von 1:30 als Dezimalzahl "1,5" angezeigt. Wie kann ich es in einem Zeitformat anzeigen lassen?

%Vor%     
Michael Quiles 26.04.2010, 21:10
quelle

7 Antworten

25
%Vor%

Formate:

%Vor%

BEARBEITEN: Da wir jetzt wissen, die Zeit ist ein double ändern Sie den Code zu (vorausgesetzt, Sie wollen Stunden und Minuten):

%Vor%

oder

%Vor%     
Kelsey 26.04.2010 21:11
quelle
2

Wenn Time ein System.Double ist, dann System.TimeSpan.FromHours(Time).ToString();

    
Jono 26.04.2010 21:14
quelle
2

Ich nehme an, dass Time vom Typ TimeSpan ist? In diesem Fall kann die Dokumentation von TimeSpan.ToString Ihnen helfen, insbesondere die Seiten

Wenn Time ein numerischer Datentyp ist, können Sie TimeSpan.FromHours um es zuerst in ein TimeSpan zu konvertieren.

(EDIT: TimeSpan Formatzeichenfolgen wurden in .NET 4 eingeführt.)

    
Heinzi 26.04.2010 21:13
quelle
1

Beachten Sie, dass es sehr wichtig ist, wenn Sie in einer 24-Stunden-Basis arbeiten, HH:mm und NOT hh:mm zu verwenden.

Manchmal schreibe ich versehentlich hh:mm , und dann anstelle von "13:45" bekomme ich "01:45", und es gibt keine Möglichkeit zu wissen, ob es AM oder PM ist (es sei denn, Sie verwenden tt ).

    
Ilya Kogan 26.04.2010 21:41
quelle
0

Wenn die Zeit schwimmt oder verdoppelt wird, müssen Sie. System.Math.Truncate (Zeit), um die Stunden zu erhalten

und dann (Time - System.Math.Truncate (Time)) * 60 um die Minuten zu bekommen.

    
Gabriel Guimarães 26.04.2010 21:18
quelle
0

Danke für alle Antworten, Jungs und Mädels, ich habe dieses DateTime.MinValue.AddHours(Time).ToString("H:mm"); für mein Programm benutzt, da es am einfachsten zu implementieren war.

    
Michael Quiles 26.04.2010 21:45
quelle
0

Erstellen Sie eine Zeitspanne von Ihrer numerischen Variable:

%Vor%

Verwenden Sie dann die ToString-Methode.

    
Adilson de Almeida Jr 01.09.2011 17:18
quelle

Tags und Links