IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Date de dernière modification d'un fichier FTP en anglais via la classe FTPConnection


Sujet :

Langage Java

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2007
    Messages : 359
    Points : 136
    Points
    136
    Par défaut Date de dernière modification d'un fichier FTP en anglais via la classe FTPConnection
    Bonjour à tous,

    J'utilise une classe de Java permettant de récupérer des fichiers depuis un site via un protocole FTP qui est FTPConnection .

    Seulement voilà lorsque je lie par cette classe la date de dernière modification du fichier via la méthode de FTPConnection (getModificationTime) j'obtiens des dates modifications de façon incohérents. En allant directement sur le site FTP contenant les fichiers je contate que les dates sont de format anglais (MM/JJ/AAAA HH:MM) .

    Voici le code que j'utilise pour récupérer la date de dernière modification sur le site FTP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    public static void getDerniereModifFTP(){
    		long derniereModif = 0;
    		Calendar calendrier = new GregorianCalendar();
    		String chaineDate = ""; 
     
    		try{
    			FtpConnection ftp = new FtpConnection(false,0);
    			if (ftp.connect(NOM_SERVEUR_FTP)) {
    	          if(ftp.login(NOM_UTLISATEUR, MOT_PASSE)) {
    	        	derniereModif = ftp.getModificationTime("fichier.txt");
     
    	        	System.out.println(derniereModif);
     
            	  	java.util.Date laDate = new java.util.Date(derniereModif);
    	      		calendrier.setTime(laDate);
     
    	      		chaineDate = "" + (calendrier.get(Calendar.DAY_OF_MONTH)<10?"0"+calendrier.get(Calendar.DAY_OF_MONTH):calendrier.get(Calendar.DAY_OF_MONTH)) + "/" + ((calendrier.get(Calendar.MONTH) + 1)<10?"0"+(calendrier.get(Calendar.MONTH) + 1):(calendrier.get(Calendar.MONTH) + 1)) + "/" + calendrier.get(Calendar.YEAR) + " " + (calendrier.get(Calendar.HOUR_OF_DAY)<10?"0"+calendrier.get(Calendar.HOUR_OF_DAY):calendrier.get(Calendar.HOUR_OF_DAY)) + ":" + (calendrier.get(Calendar.MINUTE)<10?"0"+calendrier.get(Calendar.MINUTE):calendrier.get(Calendar.MINUTE)) + ":00";
     
    			System.out.print(chaineDate);
     
    	          }
    	        }
    	          ftp.disconnect();
    		}catch(Exception e){
    			e.printStackTrace();
    		}
     
    	}

    Voici le résultat que j'obtiens :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    20111005013839 //Date de modification de type long
    18/04/2607 08:16:00

    Je souhaite savoir comment peut on passer la date de format anglais au format français de façon lisible .

    J'utilise Java 6 .

    Cordialement .

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Il faudrait déjà savoir ce que renvoi la méthode getModificationTime() de ta classe FTPConnection...


    a++

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Bonjour,
    En admettant que la méthode getModificationTime() de la classe FTPConnection te retourne le temps passé en milisenconde depuis le 01 janvier 1970, tu peux utiliser la class String pour avoir un affichage convenable de ta date.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Date laDate = new Date(ftp.getModificationTime("fichier.txt"));
    System.out.println(laDate);
    System.out.println(String.format("%1$td/%1$tm/%1$tY %1$tH:%1$tM:%1$tS",laDate));
    Ce qui t'affichera :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    20111005013839 //Date de modification de type long
    18/04/2067 08:16:00
    Cordialement

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut HS
    Je pense que je suis Hors Sujet.

    DSL
    @+

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2007
    Messages : 359
    Points : 136
    Points
    136
    Par défaut
    Bonjour,

    Pour répondre à adiGuba la methode getModificationTime(String nomFichier) de la classe FTPConnection renvoie la date de dernière modification du fichier de type long .

    Pour Mygalou et d'autre personnes : Je viens d'effectuer la lecture d'un autre fichier sur un autre serveur FTP, au niveau des propriété des fichiers sur ce serveur les dates s'affichent en français mais en exécutant la lecture de la date de dernière modification via l'exécution de FTPConnection la date ne s'affiche pas correctement . Cela n'a apparement rien à voir si la date est
    en anglais ou en français . J'aurai du finalement choisir un au titre au niveau de ma discussion .

    En utilisant le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Date laDate = new Date(ftp.getModificationTime("fichier.txt"));
    System.out.println(laDate);
    System.out.println(String.format("%1$td/%1$tm/%1$tY %1$tH:%1$tM:%1$tS",laDate));
    J'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sat Apr 18 08:18:24 CEST 2607
    18/04/2607 08:18:24
    Cordialement .

  6. #6
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par marcandre Voir le message
    Pour répondre à adiGuba la methode getModificationTime(String nomFichier) de la classe FTPConnection renvoie la date de dernière modification du fichier de type long .
    Oui mais ce long correspond à quoi ????
    Si ca représente une Date tu dois avoir une unité (milliseconde, seconde, minutes ???) et un point de repère.

    Bref ma question reste valide : c'est quoi cette méthode getModificationTime() ?
    Un coup d'oeil à la javadoc devrait donner la réponse... Mais comme on ne sait pas ce que tu utilises...




    En Java le timestamp correspond généralement au nombre de milliseconde depuis "epoch", soit le 1er janvier 1970 minuit GMT.

    Il suffira ensuite de faire la conversion de l'un vers l'autre...



    a++

  7. #7
    Membre habitué
    Homme Profil pro
    En rupture avec la societé
    Inscrit en
    Novembre 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : En rupture avec la societé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 144
    Points : 194
    Points
    194
    Par défaut
    bonsoir,

    je me risque au problème, perso j'aurais plus lu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    20111005013839
     
    2011 10 05 01:38:39

Discussions similaires

  1. [E-07] date de dernière modification d'un fichier
    Par Library dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/11/2008, 09h51
  2. Date de dernière modification d'un fichier
    Par Olivier Regnier dans le forum Web
    Réponses: 1
    Dernier message: 25/09/2008, 00h14
  3. [PB 9 -> PB 11] Date de dernière modification d'un fichier
    Par hicks51100 dans le forum Powerbuilder
    Réponses: 2
    Dernier message: 27/06/2008, 15h26
  4. Connaître la date de dernière modification d'un fichier
    Par Olivier Regnier dans le forum Web
    Réponses: 9
    Dernier message: 08/11/2007, 15h34
  5. Date de dernière modification d'un fichier
    Par defacta dans le forum Langage
    Réponses: 1
    Dernier message: 04/09/2007, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo