Zeitspanne zwischen Jetzt und Nächste Stunde?

7

Es ist 8.30 Uhr und ich versuche herauszufinden, wie viele Sekunden es zwischen jetzt und der nächsten vollen Stunde gibt (9:00). Ich denke ich will nur DateTime.Now.AddHours(1 ) aber nachdem ich das gemacht habe denke ich ich brauche den "Floor". Wie bekomme ich diesen Wert?

Danke.

    
Snowy 20.04.2011, 16:23
quelle

11 Antworten

17

Runden Sie einfach die Uhrzeit in Stunden bis zum nächsten ganzzahligen Wert ab:

%Vor%     
dtb 20.04.2011, 16:27
quelle
4

Dies scheint am einfachsten zu sein:

%Vor%

(wenn Sie es in ganzen Zahlen - Ganzzahl - wollen, dann setzen Sie DateTime.Now... mit (int) .

    
Lasse Espeholt 20.04.2011 16:40
quelle
3

Sie müssen nicht mit Decken und Böden herumspielen. Die Eigenschaft DateTime.Hour steht für ganze Stunden (es ist eine ganze Zahl zwischen 0 und 23) der Tageszeit, die von DateTime repräsentiert wird. Sie können dies und die DateTime.Date verwenden Eigenschaft, um die Komponenten der DateTime, die Sie nicht möchten, zu strippen (Subhour-Daten) und dann einfach subtrahieren, um ein TimeSpan zu erzeugen.

%Vor%

Sie können natürlich die TotalSeconds -Komponente der resultierenden TimeSpan extrahieren, wenn Sie das Ergebnis in Sekunden haben wollen.

    
Ani 20.04.2011 16:26
quelle
3

// Vollständig falsch gelesen. Komplett neu schreiben

Ich würde nur so etwas tun

%Vor%     
AllenG 20.04.2011 16:32
quelle
1
%Vor%

Grundsätzlich erstellen Sie hier eine neue DateTime, die eine Stunde von Now entfernt ist, ohne Minuten oder Sekunden, dann subtrahieren Sie Now davon und haben Ihr Ergebnis.

    
Stuart 20.04.2011 16:35
quelle
1

Sie müssten also die 'Rest' Minuten subtrahieren, den Unterschied finden und diesen mit 60 multiplizieren, oder?

    
John Batdorf 20.04.2011 16:26
quelle
1

Wie wäre es damit:

%Vor%     
Bill Martin 20.04.2011 16:31
quelle
1
%Vor%     
Priyank 20.04.2011 16:32
quelle
1

Wie wäre es mit:

%Vor%

Oder (vielleicht klarer):

%Vor%     
NightDweller 20.04.2011 16:27
quelle
0

Ich würde Timespan.Parse 08:30 hinzufügen, 1 Stunde zum Objekt hinzufügen, dann den Stundenabschnitt abrufen und eine neue Zeichenfolge mit: 00 als Minuten erstellen und die neue Zeichenfolge analysieren. Es kann einen effizienteren Weg geben, dies zu tun, aber ich finde diese Technik klar zu lesen.

    
Pete 20.04.2011 16:29
quelle
0

Eine besser lesbare Version:

%Vor%     
Jani 26.04.2011 20:21
quelle

Tags und Links