Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
575 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Résolu] Envoi FTP de fichier Excel avec org.apache.commons.net.ftp

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] Envoi FTP de fichier Excel avec org.apache.commons.net.ftp

n°1763027
TomZ
Posté le 22-07-2008 à 12:14:59  profilanswer
 

Bonjour à tous,
 
Je rencontre à l'heure actuelle une difficulté pour envoyer un fichier Excel via FTP.
 
J'ai lu que les fichiers Excel devraient être transférés en mode BINARY. J'ai donc mis en place le type de transfert en BINARY. L'envoi se fait, le fichier généré sur mon poste est tout à fait lisible. Par contre, quand je télécharge ce fichier à partir du FTP (via FileZilla), il est illisible par Excel.
 
En changeant le mode de transfert en ASCII, le fichier s'envoie aussi et quand je le télécharge je peux l'ouvrir. Ca fonctionne donc mais pas de la manière dont il serait "conseillé" d'envoyer.
 
Ci-dessous la méthode d'envoi FTP.
 
Il se peut également que mes lectures soient "mauvaises" auquel cas, je laisserai le transfert en ASCII.
 

Code :
  1. int reply;
  2.   ftp = new FTPClient();
  3.   ftp.connect(ftpServer);
  4.   // After connection attempt, you should check the reply code to verify
  5.   // success.
  6.   reply = ftp.getReplyCode();
  7.   if (!FTPReply.isPositiveCompletion(reply)) {
  8.    ftp.disconnect();
  9.    return;
  10.   }
  11.               boolean logged = ftp.login(ftpLogin, ftpPassword);
  12.   int binary = ftp.type( FTP.BINARY_FILE_TYPE );
  13.   ftp.enterLocalPassiveMode();
  14.   // transfer files
  15.   File file = new File( ftpFileName );
  16.   FileInputStream fis = new FileInputStream( file );
  17.   String fileName = file.getName();
  18.   boolean stored = ftp.storeFile( fileName, fis );
  19.   ftp.logout();


 
Merci par avance


Message édité par TomZ le 22-07-2008 à 16:20:11
mood
Publicité
Posté le 22-07-2008 à 12:14:59  profilanswer
 

n°1763234
TomZ
Posté le 22-07-2008 à 15:34:24  profilanswer
 

EDIT: il apparaît que pour des fichiers de gros volumes, même l'envoi ASCII ne permet pas de récupérer les fichiers Excels non endommagés.

n°1763273
TomZ
Posté le 22-07-2008 à 16:21:53  profilanswer
 

Il faut en fait ajouter dans le code
 

Code :
  1. ftp.setFileType(FTP.BINARY_FILE_TYPE);
  2. //à faire avant  
  3. int binary = ftp.type( FTP.BINARY_FILE_TYPE );


 
car en lisant bien la documentation de la librairie, on y trouve "The default file type is FTP.ASCII_FILE_TYPE" du coup les en-tête des fichiers devaient être mal écrites.


Message édité par TomZ le 22-07-2008 à 16:23:41

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Résolu] Envoi FTP de fichier Excel avec org.apache.commons.net.ftp

 

Sujets relatifs
Trier selon une colonne (résolu)inclure un fichier php avec javascript
Lien entre Internet Explorer et VBA excel[VB] Exporter une feuille Excel sur 1 Word
configuration fenêtre d'aide d'excelRecuprer L'URL du fichier Uploader !!
[VB6] Récupérer un fichier image sur le web => Non résoluProblème </map> RESOLU
Telecharger un fichier zip sur internet 
Plus de sujets relatifs à : [Résolu] Envoi FTP de fichier Excel avec org.apache.commons.net.ftp


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR