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 :

Copier les fichiers


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier Avatar de seb2020
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 133
    Points : 102
    Points
    102
    Par défaut Copier les fichiers
    Bonjour,

    J'ai un probleme avec mon application Java. Je voudrais copier 2 dlls qui sont dans le dossier bin de mon projet dans C:\Windows\system32.

    Je developpe avec Eclipse.

    J'ai trouvé ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    		public static void copyFile(File src, File dest) throws IOException
    		{
    			 FileInputStream fis = new FileInputStream(src);
    		     FileOutputStream fos = new FileOutputStream(dest);
     
    		     java.nio.channels.FileChannel channelSrc   = fis.getChannel();
    		     java.nio.channels.FileChannel channelDest = fos.getChannel();
     
    		     channelSrc.transferTo(0, channelSrc.size() , channelDest);
     
    		     fis.close();
    		     fos.close();
    		}
    Mais je ne comprends pas comment l'utiliser. Sous quelle forme je dois passer en parametre mon adresse ? Comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copyFile("Chemin\\Vers\\Mes\\DLL", "C:\\Windows\\system32")

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu dois passer des objets File avec le bon chemin...
    Je crois que je ne comprend pas très bien le problème


    Sinon un remarque : utilises des try/finally pour fermer tes flux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    	public static void copyFile(File src, File dest) throws IOException {
    	     FileChannel channelSrc   = new FileInputStream(src).getChannel();
    	     try {
    	    	 FileChannel channelDest = new FileOutputStream(dest).getChannel();
    	    	 try {
    	    		 channelSrc.transferTo(0, channelSrc.size() , channelDest);
    	    	 } finally {
    	    		 channelDest.close();
    	    	 }
    	     } finally {
    	    	 channelSrc.close();
    	     }
    	}
    a++

  3. #3
    Membre éprouvé
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Points : 935
    Points
    935
    Par défaut
    Bonjour,

    le code est un code de copie de fichier les parametres sont donc le fichier à copier, le fichier que l'on souhaite créer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copyFile("Chemin\\Vers\\Mes\\DLL\\maddll.dll", "C:\\Windows\\system32\\maddll.dll")

  4. #4
    Membre régulier Avatar de seb2020
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 133
    Points : 102
    Points
    102
    Par défaut
    Salut,

    Alors j'ai testé comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copyFile("N:\\Java\\Projet\\bin\\admin_switch\\rxtxSerial.dll","C:\\WINDOWS\\system32\\rxtxSerial.dll");
    Mais ça ne marche pas...

    Si j'essaie de compiler ça me donne ça comme errreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    	The method copyFile(File, File) in the type ListSerial is not applicable for the arguments (String, String)
     
    	at admin_switch.ListSerial.main(ListSerial.java:31)

  5. #5
    Membre éclairé

    Inscrit en
    Juillet 2008
    Messages
    232
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 232
    Points : 837
    Points
    837
    Par défaut
    Les paramètres de la fonction ne sont pas des chaînes de caractères, ce sont des objet java.io.File. Reporte-toi à sa documentation.

  6. #6
    Membre éprouvé
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Points : 935
    Points
    935
    Par défaut
    Oups !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copyFile(new File("N:\\Java\\Projet\\bin\\admin_switch\\rxtxSerial.dll"),new File("C:\\WINDOWS\\system32\\rxtxSerial.dll"));

  7. #7
    Membre régulier Avatar de seb2020
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 133
    Points : 102
    Points
    102
    Par défaut
    Ok ca marche merci bien

Discussions similaires

  1. Réponses: 4
    Dernier message: 29/10/2008, 15h44
  2. Fonction pour copier les fichiers
    Par nabil dans le forum Vos contributions VB6
    Réponses: 0
    Dernier message: 08/12/2007, 10h16
  3. Comment copier LES fichiers cachés d'un répertoire donné :-)
    Par gifffftane dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 25/06/2007, 18h57
  4. Copier les fichiers d'un répertoire dont la date est supérieure à x
    Par tatayoyo dans le forum Shell et commandes GNU
    Réponses: 17
    Dernier message: 03/10/2006, 15h28
  5. [BAT] : Copier les fichiers et les crypter
    Par ADONET dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 15/02/2006, 18h56

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