Recherche…


Trouvez facilement le dernier jour d'un mois

Si vous avez besoin de trouver le dernier jour du mois, vous pouvez faire de la gymnastique DateTime compliquée ou vous pouvez utiliser la méthode suivante.

Disons que vous voulez trouver le dernier jour de février 2021. Faites ce qui suit:

Integer month = 2;
Integer day = null;
Integer year = 2021;

// Create a new DateTime object for the first day of the month following
// the date you're looking for.
DateTime dtTarget = DateTime.newInstance(year, month, 1);
//In this case we would be sure that month would not be out of bound
dtTarget = dtTarget.addMonths(1);
// Then use the .addDays() method to add negative 1 days. This gives you
// the last day of the target month.
DateTime lastDayOfMonth = dtTarget.addDays(-1);
day = lastDayOfMonth.day();

System.debug(lastDayOfMonth);
System.debug(day);

Cela produit la sortie suivante dans les journaux:

18:19:57:005 USER_DEBUG [15]|DEBUG|2021-02-28 08:00:00
18:21:10:003 USER_DEBUG [16]|DEBUG|28

Cela fonctionne pour toutes les méthodes d'ajout, vous permettant de trouver facilement et rapidement DateTimes dans le passé.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow