Conserver la valeur d'une variable en Java

Scipion -  
 Utilisateur anonyme -
Bonjour à tous,
j'aimerai conserver la valeur d'une variable au-travers plusieurs exécutions de mon programme (il s'agit en réalité d'une variable indiquant la date de la dernière modification). Suis-je obligé d'avoir recours à une base de donnée ou alors y-a-t'il un autre moyen ?
Merci de vos réponses.
A voir également:

3 réponses

dariumis Messages postés 571 Date d'inscription   Statut Membre Dernière intervention   63
 
Salut. je pense que le plus simple c'est la bases de données. y' a certainement moyen de faire via un fichier. mais là je vais sur des terrains inconnus.
0
ProgMad Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,

Via un fichier ca me paraît faisable. Tu sauvegarde (par exemple) le jour dans la première ligne puis le mois dans la deuxième ligne etc. Après chaque lancement de ton programme, tu accède à ton fichier et tu récupère la date de la dernière modification en la mettant à jour.
0
Utilisateur anonyme
 
Salut,

"(il s'agit en réalité d'une variable indiquant la date de la dernière modification)."

Il s'agit donc d'obtenir la date de la dernière modification d'un fichier...
C'est possible en utilisant la méthode lastModified() de la classe File.
La date de modification est obtenue en millisecondes dans un long.

long dateModification = objetMonFichier.lastModified(); // import java.io.File;


Et voici comment, à partir des millisecondes, obtenir cette date sous la forme jj/mm/aaaa heure:minutes:secondes

         String monFichier = "unFichier.type";
         
         File d = new File(monFichier);
         //long dateModification = d.lastModified();
      
         Calendar cal = Calendar.getInstance (); 
         cal.setTime(new Date(d.lastModified()));
         
         int annee = cal .get(Calendar.YEAR);
         int num_mois = cal.get(Calendar.MONTH);
         int jour = cal.get(Calendar.DAY_OF_MONTH);
         int heure = cal.get(Calendar.HOUR_OF_DAY);
         int minute = cal.get(Calendar.MINUTE);
         int seconde = cal.get(Calendar.SECOND);
         
      // Zéro à gauche de la valeur < 10 du jour, du mois, de l'heure, des minutes et des secondes
         String jourS = (jour<10?"0":"") + jour;
         String num_moisS = ((num_mois +1)<10?"0":"") + (num_mois +1);
         String heureS = (heure<10?"0":"") + heure;
         String minuteS = (minute<10?"0":"") + minute;
         String secondeS = (seconde<10?"0":"") + seconde;
         
         System.out.println("\nDate de l'ultime modification du fichier " + monFichier + ":\n"
            + jourS + "/" + num_moisS + "/" + annee + " " + heureS
            + ":" + minuteS  + ":" + secondeS);


Noter qu'il n'est pas possible d'obtenir la date de création d'un fichier.

Cordialement

Dan
0