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

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

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2007
    Messages : 342
    Points : 129
    Points
    129

    Par défaut Classe FTPSClient et téléchargement d'un fichier vide

    Bonjour à tous,

    J'utilise une classe de Java nommée FTPSClient (du package org.apache.commons.net.ftp.FTPSClient ).

    Je rencontre des difficultés à télécharger un fichier texte, j'obtiens un fichier vide (fichier de taille 0 octet) suite à ma connexion vers un serveur FTP sécurisé.

    Voici le code où je prépare une classe instanciée pour télécharger le fichier :
    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
     
    FTPClient ftpClient = new FTPSClient(); 
     
    ftpClient.connect(servername, portNumber);
     
    ftpClient.login(userName, password);
     
    ftpClient.enterLocalPassiveMode();
     
    ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
     
     
    //Téléchargement du fichier 
    OutputStream output;
    output = new FileOutputStream(localFile);
    success = ftpClient.retrieveFile(remoteFile, output);
    output.close();
    //Fin du téléchargement
     
    ftpClient.logout();
    ftpClient.disconnect();

    En vous remerciant d'avance pour votre aide.

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

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2007
    Messages : 342
    Points : 129
    Points
    129

    Par défaut

    Bonjour à tous

    j'ai trouvé une solution pour récupérer un fichier complet.

    Voici le code corrigé :
    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
    29
    30
    31
     
     
     
    FTPClient ftpClient = new FTPSClient(); 
     
    ftpClient.connect(servername, portNumber);
     
    // ===== Voici le Code ajouté ========= 
     
    ftpClient.execPBSZ(4000); // Protection Buffer Size : Taille du tampon de protection
     
    ftpClient.execPROT("P");  //Protection des données de la chaine en privé
     
    // ==========================
     
    ftpClient.login(userName, password);
     
    ftpClient.enterLocalPassiveMode();
     
    ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
     
     
    //Téléchargement du fichier 
    OutputStream output;
    output = new FileOutputStream(localFile);
    success = ftpClient.retrieveFile(remoteFile, output);
    output.close();
    //Fin du téléchargement
     
    ftpClient.logout();
    ftpClient.disconnect();
    Voir ici : http://www.massapi.com/method/org/ap....execPBSZ.html

    http://www.massapi.com/method/org/ap....execPROT.html


    Présentation de la classe FTPSClient si cela peut vous servir :
    https://commons.apache.org/proper/co...TPSClient.html


    Merci à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/01/2012, 15h29
  2. Réponses: 4
    Dernier message: 13/06/2007, 15h27
  3. Réponses: 3
    Dernier message: 02/01/2006, 16h23
  4. Réponses: 4
    Dernier message: 11/08/2005, 11h55
  5. Mysqldump donnant un fichier vide
    Par simoryl dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 15/02/2005, 16h42

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