Benutzer mit den meisten Antworten
Wie Stunden eingeben?

Frage
-
Hallo,
Wie kann man Minuten in Datetime eingeben?
Also ich habe das gemacht:
long Zeit = DateTime.Now.Minute; //Und das in Konstruktor: public ZeitKlasse() { Zeit = 12:00; }
Da kommt leider aber ein Syntax-Fehler.
Kann mir jemand das richtige geben?
Danke
Antworten
-
Hallo,
nun ja, wenn du C# beherrschen würdest, wüsstest du das 12:00 keine gültige Angabe im Quelltext ist. Und du wüsstest auch mit DateTime umzugehen.Zunächst sei erstmal gesagt das ein DateTime keine konstante Minutenzahl hat. Ein DateTime stellt eine feste Zeit dar, ein TimeSpan wäre eine Zeitspanne. Letzteres kannst du dir in Minuten ausgeben lassen. Ich interpretiere das nun so, dass du die 12 Stunden und 0 Minuten einfach in Minuten umrechnen willst. (Also von einem TimeSPan aus.)
dazu hast du 2 Möglichkeiten:
int m = 0;//0 Minuten int h = 12;//12 Stunden int totalMin = m + h*60;
oder aber über ein TimeSpan:var totalMin = new TimeSpan(12, 0, 0).TotalMinuts;//Liefert die Anzahl der Minuten mit Bruchteilen, d.h. mit Komma zurück var totalMinRounded = (int)totalMin;//Komma-Minuten abrunden
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort markiert schuayb Kazrabatli Sonntag, 15. März 2015 12:29
-
Ja eben weil DateTime.Now die aktuelle Zeit anzeigt, kannst du diese nicht in Minuten umrechnen. Die Minute-Eigenschaft gibt an welche Minute Momentan in der Stunde ist. Aber so etwas wie eine Gesamt-Minuten-Zahl kann nicht gebildet werden, ohne das man den Startpunkt angibt.
Wenn du beispielsweise wissen willst wie viele Minuten seit Mitternacht vergangen sind, so kannst du die DateTimes von einander abziehen um so wieder eine Zeitspanne, ein TimeSpan zu bekommen:
var totalMin = (DateTime.Now - new DateTime(0, 0, 0)).TotalMinutes;
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort markiert schuayb Kazrabatli Sonntag, 15. März 2015 13:01
Alle Antworten
-
Hallo,
nun ja, wenn du C# beherrschen würdest, wüsstest du das 12:00 keine gültige Angabe im Quelltext ist. Und du wüsstest auch mit DateTime umzugehen.Zunächst sei erstmal gesagt das ein DateTime keine konstante Minutenzahl hat. Ein DateTime stellt eine feste Zeit dar, ein TimeSpan wäre eine Zeitspanne. Letzteres kannst du dir in Minuten ausgeben lassen. Ich interpretiere das nun so, dass du die 12 Stunden und 0 Minuten einfach in Minuten umrechnen willst. (Also von einem TimeSPan aus.)
dazu hast du 2 Möglichkeiten:
int m = 0;//0 Minuten int h = 12;//12 Stunden int totalMin = m + h*60;
oder aber über ein TimeSpan:var totalMin = new TimeSpan(12, 0, 0).TotalMinuts;//Liefert die Anzahl der Minuten mit Bruchteilen, d.h. mit Komma zurück var totalMinRounded = (int)totalMin;//Komma-Minuten abrunden
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort markiert schuayb Kazrabatli Sonntag, 15. März 2015 12:29
-
Ja eben weil DateTime.Now die aktuelle Zeit anzeigt, kannst du diese nicht in Minuten umrechnen. Die Minute-Eigenschaft gibt an welche Minute Momentan in der Stunde ist. Aber so etwas wie eine Gesamt-Minuten-Zahl kann nicht gebildet werden, ohne das man den Startpunkt angibt.
Wenn du beispielsweise wissen willst wie viele Minuten seit Mitternacht vergangen sind, so kannst du die DateTimes von einander abziehen um so wieder eine Zeitspanne, ein TimeSpan zu bekommen:
var totalMin = (DateTime.Now - new DateTime(0, 0, 0)).TotalMinutes;
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort markiert schuayb Kazrabatli Sonntag, 15. März 2015 13:01