Class DateUtils

java.lang.Object
fr.gpmsi.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 Details

    • DateUtils

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

    • 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