Accueil > > > ENVOI D'UNE ARBORESSENCE EN JAVA VERS SERVEUR FTP
ENVOI D'UNE ARBORESSENCE EN JAVA VERS SERVEUR FTP
Information sur la source
Description
pas besoin d'acheter l'API editftpjPro qui coute 500 Dollars pour envoyer une arborescence complète (dossier sous dossier fichier ......) vers un serveur FTP et qui créer la même arborescence locale sur le serveur FTP.j'utilise une API gratuite qui est editftpj.
Source
- package test;
-
-
-
- import java.io.File;
- import java.io.IOException;
- import java.net.InetAddress;
- import java.util.StringTokenizer;
-
- import ftp.FtpConnection;
- import ftp.TestFTP;
-
- public class Copy {
- // Dans le contructeur on va utiliser notre methode copy
- // et donc on vas faire quelques ptit test
- String src,dest;
- File DEST,SRC;
- FtpConnection ftp;
- boolean b,t;
- public Copy (FtpConnection ftp,String src, String dest){
-
- System.out.println("**********************************recursivité****************************************************");
- TestFTP test=new TestFTP();
- this.src=src;
- this.ftp=ftp;
- this.dest=dest;
-
- this.SRC = new File (src);//file locale
- this.dest=dest;//le chemin sur le ftp
- String nomfolderlocal= SRC.getName();
-
-
- try {
- System.out.println("le dossier src :"+nomfolderlocal+" -- et dest :"+dest);
- System.out.println("le dossier coutrant sur le ftp est :"+ftp.getCurrentDirectory());
-
- } catch (IOException e2) {
- System.out.println("erreur de placage sur le serveur");
- e2.printStackTrace();
- }
-
- if (SRC.isDirectory()){
- System.out.println("je verifie que le folder : "+nomfolderlocal+" existe bien sur le serveur ftp ");
- b=test.verifDossierFtp(nomfolderlocal, ftp);
- System.out.println("le folder exitse sur le serveur ? "+b);
- }
-
-
-
- // ben si le rep dest n'existe pas, et notre source est un repertoire
- if (b==false){
- if (SRC.isDirectory()){
-
-
-
-
-
- System.out.println("...................................................................");
- System.out.println("...........................Detection folder......................");
- System.out.println("..................................................................");
- try {
- System.out.println("-----------------+"+nomfolderlocal+"+");
- ftp.makeDirectory(nomfolderlocal);
-
- System.out.println("je creer le repertoire "+nomfolderlocal);
-
- //System.out.println("le dossier coutrant sur le ftp devient :"+ftp.getCurrentDirectory());
-
- } catch (IOException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }//on se place dans le folder sur ftp
-
-
- for (File f:SRC.listFiles()){
- if(!f.isDirectory()){
- try {
- ftp.changeDirectory(nomfolderlocal);
- } catch (IOException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
-
- try {
-
- System.out.println("je copy le fichier "+SRC+"\\"+f.getName()+" dans "+ftp.getCurrentDirectory());
- ftp.uploadFile(f.getName(),SRC+"\\"+f.getName());
- } catch (IOException e) {
- System.out.println("probleme upload fichier");
- e.printStackTrace();
- }
-
- try {
- System.out.println("je remonte au dosiier pere");
- ftp.parentDirectory();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
-
-
- }
- }
- // Mais si jammais c'est un fichier, on fait un simple copie
- if (SRC.isFile()){
- System.out.println("...................................................................");
- System.out.println("...........................Detection Fichier......................");
- System.out.println("..................................................................");
-
-
- /*
- try {
- System.out.println("je copy le fichier "+src+" dans "+ftp.getCurrentDirectory());
- ftp.uploadFile(ftp.getCurrentDirectory(),src);
- } catch (IOException e) {
- System.out.println("probleme upload fichier");
- e.printStackTrace();
- }
- */
- // et si notre source est un repertoire qu'on doit copié!!!
- }else if (SRC.isDirectory()){
- // on parcour tout les elements de ce catalogue,
- for (File f:SRC.listFiles()){
- // et hop on fait un appel recursif a cette classe en mettant a jour les path de src et dest: et le tour est joué
-
- try {
- System.out.println("je lance l'appel recursif et jme place le repertoire ftp"+ftp.getCurrentDirectory());
- System.out.println("le chemin du fichier locale"+f.getAbsolutePath());
- ftp.changeDirectory(nomfolderlocal);
- new Copy(ftp,f.getAbsolutePath(),ftp.getCurrentDirectory());
- } catch (IOException e) {
- System.out.println("probleme copy appel recusrsirf");
- e.printStackTrace();
- }
- }
- }
-
- }
- /** copie le fichier source dans le fichier resultat
- * retourne vrai si cela réussit
- */
- }
package test;
import java.io.File;
import java.io.IOException;
import java.net.InetAddress;
import java.util.StringTokenizer;
import ftp.FtpConnection;
import ftp.TestFTP;
public class Copy {
// Dans le contructeur on va utiliser notre methode copy
// et donc on vas faire quelques ptit test
String src,dest;
File DEST,SRC;
FtpConnection ftp;
boolean b,t;
public Copy (FtpConnection ftp,String src, String dest){
System.out.println("**********************************recursivité****************************************************");
TestFTP test=new TestFTP();
this.src=src;
this.ftp=ftp;
this.dest=dest;
this.SRC = new File (src);//file locale
this.dest=dest;//le chemin sur le ftp
String nomfolderlocal= SRC.getName();
try {
System.out.println("le dossier src :"+nomfolderlocal+" -- et dest :"+dest);
System.out.println("le dossier coutrant sur le ftp est :"+ftp.getCurrentDirectory());
} catch (IOException e2) {
System.out.println("erreur de placage sur le serveur");
e2.printStackTrace();
}
if (SRC.isDirectory()){
System.out.println("je verifie que le folder : "+nomfolderlocal+" existe bien sur le serveur ftp ");
b=test.verifDossierFtp(nomfolderlocal, ftp);
System.out.println("le folder exitse sur le serveur ? "+b);
}
// ben si le rep dest n'existe pas, et notre source est un repertoire
if (b==false){
if (SRC.isDirectory()){
System.out.println("...................................................................");
System.out.println("...........................Detection folder......................");
System.out.println("..................................................................");
try {
System.out.println("-----------------+"+nomfolderlocal+"+");
ftp.makeDirectory(nomfolderlocal);
System.out.println("je creer le repertoire "+nomfolderlocal);
//System.out.println("le dossier coutrant sur le ftp devient :"+ftp.getCurrentDirectory());
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}//on se place dans le folder sur ftp
for (File f:SRC.listFiles()){
if(!f.isDirectory()){
try {
ftp.changeDirectory(nomfolderlocal);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
System.out.println("je copy le fichier "+SRC+"\\"+f.getName()+" dans "+ftp.getCurrentDirectory());
ftp.uploadFile(f.getName(),SRC+"\\"+f.getName());
} catch (IOException e) {
System.out.println("probleme upload fichier");
e.printStackTrace();
}
try {
System.out.println("je remonte au dosiier pere");
ftp.parentDirectory();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
// Mais si jammais c'est un fichier, on fait un simple copie
if (SRC.isFile()){
System.out.println("...................................................................");
System.out.println("...........................Detection Fichier......................");
System.out.println("..................................................................");
/*
try {
System.out.println("je copy le fichier "+src+" dans "+ftp.getCurrentDirectory());
ftp.uploadFile(ftp.getCurrentDirectory(),src);
} catch (IOException e) {
System.out.println("probleme upload fichier");
e.printStackTrace();
}
*/
// et si notre source est un repertoire qu'on doit copié!!!
}else if (SRC.isDirectory()){
// on parcour tout les elements de ce catalogue,
for (File f:SRC.listFiles()){
// et hop on fait un appel recursif a cette classe en mettant a jour les path de src et dest: et le tour est joué
try {
System.out.println("je lance l'appel recursif et jme place le repertoire ftp"+ftp.getCurrentDirectory());
System.out.println("le chemin du fichier locale"+f.getAbsolutePath());
ftp.changeDirectory(nomfolderlocal);
new Copy(ftp,f.getAbsolutePath(),ftp.getCurrentDirectory());
} catch (IOException e) {
System.out.println("probleme copy appel recusrsirf");
e.printStackTrace();
}
}
}
}
/** copie le fichier source dans le fichier resultat
* retourne vrai si cela réussit
*/
}
Conclusion
pas besoin d'acheter l'API editftpjPro qui coute 500 Dollars pour envoyer une arborescence complète (dossier sous dossier fichier ......) vers un serveur FTP et qui créer la même arborescence locale sur le serveur FTP.j'utilise une API gratuite qui est editftpj.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
copie de fichier en java [ par refre ]
bonjour, j'ai une copie de fichier a faire. en fait j'ai un fichier dans un dossier et j'aimerai en faire une copie dans un autre fichier... mais j'ai
Permission du repertoire avec java.. [ par CrazyDog_974 ]
bonjour j'ai un petit blm, voila dans une de mais je souhaite lors de intance de la class créé un repertoire(jusqu'ici tout va bien) mais je truc c'es
selection d'un repertoire avec java [ par sanfred ]
Bonjour,Je suis novice en java et je cherche un code source qui permette de sélectionner un répertoire de destination sur le poste du client. Le but e
applet problème de class interne [ par neo1260 ]
Bonjour, j'ai une applet avec une class print et une class interne qui fait du FTP, quand je compil il n'y a pas d'erreur et quand je la charge dans m
2xécution !!!! [ par pierre63 ]
Bonjour,J'ai un fichier Ex1.java dans un repertoire sur un disque p: et mon jdk est installer sur c et la viable d'environement path et bien configure
serveur FTP en java [ par laigle76 ]
Bonjour,avant de me lancer dans cette aventure, j'aimerai savoir si il est possible avec les bibliothéques java de dévellopé un serveur FTP en java.Si
[applet] Lister un répertoire [ par hell2405 ]
Bonjour Je suis entrain de faire une visionneuse d'image et je voudrais l'utiliser pour lister un dossier qui est sur mon compte free (donc l'apple
SERVEUR FTP EN JAVA [ par nicordi ]
BonjourJe suis en train de developper un client /serveur en java. J'ai reussi a faire un client en java qui se connecte à un serveur externe.Par
Mot de passe sur dossier [ par seareal ]
Bonjour,Je souhaite créer un petit programme Java capable de protéger un dossier. L'objectif est qu'un utilisateur (non autorisé) n'est
Réaliser un serveur ftp [ par souhira_tn ]
<td id="HB_Focus_Element" valign="top" width="100%" b
|
Derniers Blogs
CSS CONTENT STATE SELECTORS (PERSONNAL DRAFT)CSS CONTENT STATE SELECTORS (PERSONNAL DRAFT) par FREMYCOMPANY
Bonjour à tous, Je viens de publier une proposition comprenant 5 pseudo-classes pour le CSS Working Group ayant trait à l'état de chargement d'un élément (ex: IMG,VIDEO,AUDIO,OBJECT pour l'HTML.). Si le c½ur vous en dit, vous pouvez retrouver cette p...
Cliquez pour lire la suite de l'article par FREMYCOMPANY MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ?MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ? par ROMELARD Fabrice
Formation initiale Durant la formation, le découpage classique est le suivant (je donnerai les équivalences Suisse lorsque je les connaîtrais) : Ecole primaire jusqu'au Collège : Formation générale permettant d'obtenir les méthodes...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice Y'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENTY'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENT par Aleks
Quand on a ce genre d'erreur sans log :
Et bas on a juste envie de choper le gas de Microsoft qu'a développé ça et lui foutre des baffes de Coboye ! ...
Cliquez pour lire la suite de l'article par Aleks [HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL[HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL par Pierrick CATRO-BROUILLET
Avec la sortie prochaine de la Beta Consumer Preview de Windows 8, j'avais envie de revenir sur une des fonctionnalités que j'attends le plus et que, en bon geek que je suis, j'utilise déjà : Hyper-V 3 ainsi son module PowerShell.
Il y a déjà pléthor...
Cliquez pour lire la suite de l'article par Pierrick CATRO-BROUILLET IIS7 - COMPRESSION GZIPIIS7 - COMPRESSION GZIP par cyril
La compression GZIP permet d'améliorer les performances de navigation en compressant ce qu'envoie le serveur à un client. Pour comprendre comment cela fonctionne, regardons ce qu'il se passe au niveau HTTP lorsqu'un client tente d'accéder à une ress...
Cliquez pour lire la suite de l'article par cyril
Forum
PARSER DE XMLPARSER DE XML par fioreT
Cliquez pour lire la suite par fioreT
Logiciels
Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning Academy System (17.1.3.0)ACADEMY SYSTEM (17.1.3.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|