Manipulation des dates avec Java

Dragon tunisien Messages postés 9 Statut Membre -  
 danimo -
Bonjour,Chers amis, je veux savoir comment on peux manipuler les dates dans l'exp suivant : j'ai un date qui s'appelle "DR"(date remis d' un rapport) et "Délai"(dernier délai pour la remise de cette rapport )je veux savoir comment je fais pour afficher un message system.out.println qui indique si DR>DR ou non
un grand merci à tous !!
Configuration: Windows XP
Firefox 3.5.5

2 réponses

  1. danimo
     
    Salut,

    Je te conseille de voir et utiser les classes Calendar et GregorianCalendar.

    Exemple:
       import java.util.GregorianCalendar;
       import java.util.Calendar;
    //-------------
    //-----------
    //anneeA, num_mois, jourA sont des int (idem pour la date B)
    
             Calendar dA = new GregorianCalendar(anneeA, num_moisA - 1, jourA);
    
    //IMPORTANT:
    //num_moisA -1 et num_moisB -1 car le mois à fournir est une valeur de 0 à 11
    // exemple pour novembre il faut donner 10
    
             Calendar dB = new GregorianCalendar(anneeB, num_moisB - 1, jourB);
          
             boolean b = dA.equals(dB);  // true si les dates A et B sont égales
             boolean b1 = dA.after(dB);  // true si la date A est postérieure à la date B
             boolean b2 = dA.before(dB); // true si la date A est antérieure à la date B
    
             //if(b) dA = dB
             //if(b1) dA > dB
             //if(b2) da < db
    
    


    Cordialement,

    Dan
    1
  2. Phortitou Messages postés 231 Statut Membre 27
     
    Ou alors tout betement la classe Date
    0
    1. danimo
       
      Salut,

      Il y a un tel nombre de méthodes et constructeurs "deprecated" (qu'il est conseillé de remplacer en utilisant Calendar) dans la classe Date que je préfère utiliser presque systématiquement Calendar.
      Mais tu as raison, c'est possible aussi avec Date.

      Une précision concernant ma réponse:
      Je considère que le mois et le jour fournis sont valides (0 à 11 pour le mois, 1 à 28 ou 29 ou 30 ou 31 pour le jour).
      Il est bien entendu possible de contrôler la validité de ces valeurs en utilisant setLenient(false).

      Cordialement,

      Dan
      0