Package fr.gpmsi

Class DateUtils


  • public class DateUtils
    extends Object
    Methodes utilitaires de dates. Attention aux types, il y a des Date (ancien type) et des LocalDate (nouveau type).
    • Constructor Detail

      • DateUtils

        public DateUtils()
        Constructeur par défaut
    • Method Detail

      • formatAsFrenchDate

        public static String formatAsFrenchDate​(Date d)
        Utilitaire pour formater une date au format francais, ex : 31/12/2019
        Parameters:
        d - la date (peut etre null)
        Returns:
        la date formatée ou une chaîne vide si d est null
      • formatAsFrenchDate

        public static String formatAsFrenchDate​(LocalDate d)
        Utilitaire pour formater une localdate au format francais, ex : 31/12/2019
        Parameters:
        d - la localdate (peut etre null)
        Returns:
        la date formatée ou une chaîne vide si d est null
      • toDate

        public static Date toDate​(LocalDate ld)
        Transformer une LocalDate en Date, en utilisant la time Zone par défaut du système. Utilise la formule Date.from(ld.atStartOfDay(ZoneId.systemDefault()).toInstant())
        Parameters:
        ld - la localdate (ne doit pas etre null)
        Returns:
        la date
      • toLocalDate

        public static LocalDate toLocalDate​(Date d)
        Transformer une Date en LocalDate, en utilisant la time Zone par défaut du système. Utilise la formule d.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()
        Parameters:
        d - la date (ne doit pas etre null)
        Returns:
        la localdate
      • calcAge

        public static Period calcAge​(Date birthDate,
                                     Date presentDate)
        Calcule l'age entre la date de naissance et la date presente (inclue)
        Parameters:
        birthDate - La date de naissance
        presentDate - La date presente
        Returns:
        Un objet Period que l'on peut utiliser avec getMonths() et getYears()
      • getIsoWeekStartDate

        public static LocalDate getIsoWeekStartDate​(int isoYear)
        Retourner la date du premier lundi de l'année ISO donnée (utile pour le début de l'année SSR/SMR)
        Parameters:
        isoYear - l'année
        Returns:
        la date du premier lundi de l'année ISO
      • getIsoWeekEndDate

        public static LocalDate getIsoWeekEndDate​(int isoYear,
                                                  int month)
        Retourner la date du dernier dimanche du mois donné. La semaine appartient au mois si le jeudi est dans le mois.
        Parameters:
        isoYear - l'année
        month - le mois (1 à 12)
        Returns:
        date du dimanche de la dernière semaine du mois