Sto provando la nuova lingua di Google Dart e non so come ottenere l'ultimo giorno del mese corrente?Come trovare l'ultimo giorno del mese?
Questo mi dà la data corrente:
var now = new DateTime.now();
Sto provando la nuova lingua di Google Dart e non so come ottenere l'ultimo giorno del mese corrente?Come trovare l'ultimo giorno del mese?
Questo mi dà la data corrente:
var now = new DateTime.now();
Ecco un modo per trovarlo:
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
ho la data corrente, in modo da costruire il primo giorno del mese successivo, e poi sottrarre un giorno fuori di esso. Sto anche prendendo in considerazione il cambiamento dell'anno.
Aggiornamento: Ecco il codice un po 'più breve per la stessa cosa, ma ispirato da Chris zero trucco:
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
Ha il controllo/codice aggiuntivo, nel caso in cui si vuole fare questo a livello di codice (ad es. hai un mese specifico come numero intero).
Fornire un valore del giorno zero per il prossimo mese vi dà l'ultimo giorno del mese precedente
var date = new DateTime(2013,3,0);
print(date.day); // 28 for February
Si tratta di un effettivo utilizzo legittimo di DateTime? In tal caso, potremmo voler aggiornare la documentazione per DateTime? –
Neat. Suppongo che questo rimanga così com'è in futuro? –
Sì. questo è un comportamento garantito. –
noti che sottraendo 1 giorno (= 24 ore) non funzionerebbe se siete esattamente alla data in cui la luce del giorno -Il risparmio è disattivato. In questo caso, probabilmente non importa poiché i giorni di passaggio non sono mai (?) L'ultimo giorno del mese. –
Hai ragione. E ci sono i giorni di cambio nell'ultimo giorno del mese. –