Soustraction date en java

Résolu
Bonjour,

je veux faire une application facebook qui affiche les posts de l'utilisateur avec la date de création.
et je veux afficher juste les postes qui sont crées de la date actuelle moins 10 ans..
je suis réussit d'afficher les postes de l'utilisateur avec la date de création mais je n'arrive pas a faire l'affichage des posts dont la date de création entre date début=(la date acuelle - 10 ans) et la date fin = la date actuelle.
donc comment faire la soustraction de 10 ans de la date actuelle en java.
[ la date actuelle est sous la forme: 2017-03-09T11:32:55.365Z
et created time est sous la forme: Thu Apr 17 20:38:28 CEST 2014]
comment afficher les resultats entre date début et date fin.
Merci

1 réponse

  1. Contributeur sécurité
    Salut,

    Utilise l'option Calendar et non pas l'objet Date.

    La fonction Calendar.add() pour ajouter du négatif.

    Calendar c = Calendar.getInstance();

    c.add(Calendar.Month, -10);


    De tête, ça doit être quelque chose comme ça.
    1. bonjour Dinatha voici mon code

      Date time = aPost.getCreatedTime();
      Calendar c = Calendar.getInstance();
      c.add(Calendar.YEAR, -10);
      Date db = c.getTime();
      System.out.println("c= "+db);

      { System.out.println("created time = "+time);

      voici le résultat:
      c= Sat Mar 10 16:03:13 CET 2007
      created time = Sat Jan 01 09:00:00 CET 2005

      maintenant je veux afficher les postes dont created time ( "time") est supérieure à la date db
      merci de m'aider.
    2. @intissaroamon probléme est résolu

      if(!time.before(db))

      { //display your report}

      else{ // // don't display the report}
      merci
    3. Contributeur sécurité
      Mais de rien, bien joué ;-)

      Pense à utiliser l'auto-complétion : CTRL+ESPACE