Ich versuche die neue Google Dart-Sprache und weiß nicht, wie man den letzten Tag des aktuellen Monats bekommt?Wie finde ich den letzten Tag des Monats?
Das gibt mir das aktuelle Datum:
var now = new DateTime.now();
Ich versuche die neue Google Dart-Sprache und weiß nicht, wie man den letzten Tag des aktuellen Monats bekommt?Wie finde ich den letzten Tag des Monats?
Das gibt mir das aktuelle Datum:
var now = new DateTime.now();
Hier ist eine Möglichkeit, es zu finden:
var now = new DateTime.now();
// Find the last day of the month.
var beginningNextMonth = (now.month < 12) ? new DateTime(now.year, now.month + 1, 1) : new DateTime(now.year + 1, 1, 1);
var lastDay = beginningNextMonth.subtract(new Duration(days: 1)).day;
print(lastDay); // 28 for February
ich das aktuelle Datum, so dass ich den ersten Tag des nächsten Monats konstruieren und dann subtrahiere einen Tag davon. Ich berücksichtige auch den Wechsel des Jahres.
Update: Hier ist ein wenig kürzer Code für die gleiche Sache, aber inspiriert von Chris Null-Trick:
var now = new DateTime.now();
// Find the last day of the month.
var lastDayDateTime = (now.month < 12) ? new DateTime(now.year, now.month + 1, 0) : new DateTime(now.year + 1, 1, 0);
print(lastDayDateTime.day); // 28 for February
Es hat die zusätzliche Überprüfung/code, falls Sie dies programmatisch tun (zB haben Sie einen bestimmten Monat als Integer).
einen Tageswert von Null für den nächsten Monat Providing gibt Ihnen den letzten Tag des Vormonats
var date = new DateTime(2013,3,0);
print(date.day); // 28 for February
Ist dies eine tatsächliche legitime Verwendung von DateTime? Wenn ja, möchten wir möglicherweise die Dokumentation für DateTime aktualisieren? –
Ordentlich. Ich nehme an, dass dies so bleibt wie es ist in der Zukunft? –
Ja. Das ist garantiertes Verhalten. –
Beachten Sie, dass 1 Tag subtrahiert (= 24 Stunden) würde nicht funktionieren, wenn Sie genau an dem Tag, wo Tageslicht -Savings ist deaktiviert. In diesem Fall spielt es wahrscheinlich keine Rolle, da die Switch-Tage am letzten Tag eines Monats nie (?) Sind. –
Sie haben Recht. Und es gibt Switch-Tage am letzten Tag eines Monats. –