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
[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|