Was ist der beste Weg, um zwei TimeSpan-Objekte zu teilen?

8

Ich möchte das Verhältnis von einem TimeSpan zu einem anderen TimeSpan (im Grunde den Fortschritt eines Video-Players von seiner Gesamtzeit) erhalten. Meine derzeitige Methode besteht darin, die Millisekunden der beiden TimeSpan-Objekte zu erhalten und sie gegeneinander zu teilen. Etwas wie:

%Vor%

Gibt es eine direktere Route? Es ist ein einfaches Problem, und ich bin nur neugierig, ob es eine sehr elegante Möglichkeit gibt, es zu lösen.

Prost alles James

    
James Hay 10.09.2009, 14:00
quelle

3 Antworten

16

Sie sollten entweder Ticks oder TotalMilliseconds , abhängig von der erforderlichen Genauigkeit. Millisekunden gibt die Anzahl der Millisekunden nach der aktuellen Sekunde an.

Für eine bessere Lösung wird es nicht einfacher als eine Division, so dass Ihre aktuelle Lösung in Ordnung ist (abzüglich des Fehlers).

    
Richard Szalay 10.09.2009, 14:01
quelle
17
%Vor%

Sie müssen eins in ein Doppelbild umwandeln, andernfalls wird C # eine ganzzahlige Division machen. Ticks ist besser als TotalMilliseconds, weil es so gespeichert ist und jegliche Konvertierung vermeidet.

    
JDunkerley 10.09.2009 14:01
quelle
0

TimeSpan hat mit der Veröffentlichung von .NET Core 2.0 mehrere neue Operatoren gewonnen:

%Vor%

Beachten Sie, dass ein TimeSpan jetzt durch ein weiteres TimeSpan geteilt werden kann:

%Vor%     
Brett Wolfington 10.10.2017 20:27
quelle

Tags und Links