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

Entrée/Sortie Java Discussion :

Transferts entre 2 serveurs FTP


Sujet :

Entrée/Sortie Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 5
    Points
    5
    Par défaut Transferts entre 2 serveurs FTP
    Salut,
    j'aimerais programmer un server qui puisse copier les dossiers d'un FTP et le coller dans un autre.
    Donc jai 2 ftp (repositories) et jaimerais que les actualisations faites dans un soient copiées et collées dans lautre.
    Je ne suis pas profi en java. Voilà ce ke jai essayé de faire, mais ca ne m'aide pas tellement:


    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    import java.io.*;
     
      public class CopyDirectory{
     
     public static void main(String[] args) throws IOException{
     
       CopyDirectory cd = new CopyDirectory();
        BufferedReader in = new BufferedReader
                            (new InputStreamReader(System.in));
        System.out.println("Enter the source directory or file name : ");
     
          String source = in.readLine();
     
        File src = new File(source);
     
        System.out.println("Enter the destination directory or file name : ");
        String destination = in.readLine();
     
          File dst = new File(destination); 
     
        cd.copyDirectory(src, dst);
     
      }
     
     
      public void copyDirectory(File srcPath, File dstPath)
                                   throws IOException{
     
      if (srcPath.isDirectory()){
     
          if (!dstPath.exists()){
     
            dstPath.mkdir();
     
         }
     
     
         String files[] = srcPath.list();
     
        for(int i = 0; i < files.length; i++){
            copyDirectory(new File(srcPath, files[i]), 
                         new File(dstPath, files[i]));
     
          }
     
        }
     
       else{
     
          if(!srcPath.exists()){
     
            System.out.println("File or directory does not exist.");
     
           System.exit(0);
     
          }
     
    else
     
          {
     
           InputStream in = new FileInputStream(srcPath);
           OutputStream out = new FileOutputStream(dstPath); 
                         // Transfer bytes from in to out
                byte[] buf = new byte[1024];
     
                  int len;
     
               while ((len = in.read(buf)) > 0) {
     
              out.write(buf, 0, len);
     
            }
     
           in.close();
     
               out.close();
     
          }
     
       }
     
     System.out.println("Directory copied.");
     
     }
     
    }

    Merci,

    Franck

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Le code que tu as écris (je ne l'ai lu que rapidement) ne te permettra de faire des copie que d'un dossier à un autre sur la même machine (sauf erreur de ma part).
    Pour utiliser le protocole FTP en JAVA il y a des librairies déjà écrites comme celle d'apache.
    autant l'hiver éclate que l'hétéroclite
    le vrai geek c'est celui qui croit qu'il y a 1024 mètres dans un kilomètre

  3. #3
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    déjà on utilise File() uniquement pour des fichier locaux. Si c'est des fichiers sur des serveur ftp, faut utiliser des apis ad-hoc. Tu peux par exemple utiliser le FtpClient de jakarta: http://commons.apache.org/net/

  4. #4
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 5
    Points
    5
    Par défaut
    merci,
    je vais essayer avec apache et je ferai signe d`s que je trouve la solution à mon probleme.

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 5
    Points
    5
    Par défaut merci
    J'ai pu resoudre mon problème. Merci pour vos propositions, ca m'a très utile.

Discussions similaires

  1. [WD18] utilisation transfert fichier sur serveur ftp
    Par ROYALACE dans le forum WinDev
    Réponses: 3
    Dernier message: 13/12/2013, 12h05
  2. Client FTP transfert entre deux serveur ?
    Par smed79 dans le forum Hébergement
    Réponses: 2
    Dernier message: 29/05/2010, 01h07
  3. [FTP] Faire un transfert entre deux serveurs FTP
    Par coax81 dans le forum Web & réseau
    Réponses: 13
    Dernier message: 03/03/2008, 14h31
  4. [VB6] Transfert de fichiers entre deux serveurs FTP
    Par johnson95 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 16/10/2007, 11h30
  5. [FTP]Transfert Serveur FTP->Serveur FTP
    Par black is beautiful dans le forum Développement
    Réponses: 2
    Dernier message: 28/09/2005, 13h26

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