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

avec Java Discussion :

isFile() et renameTo retourne false


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    541
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 541
    Points : 124
    Points
    124
    Par défaut isFile() et renameTo retourne false
    Bonjour,

    J'ai essayé cette méthode sous jdk 7:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    File[] files = new File(directoryPath).listFiles();
     
    		for (File file : files) {
     
    		if (file.isFile()) {
     
    System.out.println("ceci est un fichier");
     
    }
     
    }
    isFile retourne toujours false, tester avec des fichiers ayant des noms comme celui-ci test A_00.jpg

    de même pour la méthode renameTo pour déplacer des fichiers d'un dossier à un autre cela me retourne false.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    			File afile = new File("C:\\Users\\pc\\WEBAPPS\\files\\images\\test C\\test D_00.jpg");
    afile.renameTo(new File("C:\\Users\\pc\\WEBAPPS\\files\\images\\test D\\test D_00.jpg"))
    S'il vous plait, avez-vous une idée d'où pourrais venir ce problème?

    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    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 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Déjà, commence par doubler tes \ dans tes strings. Le \simple, dans un code source, ça veux dire qu'il faut échapper le caractère suivant....

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    541
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 541
    Points : 124
    Points
    124
    Par défaut
    j'ai mis les doubles \

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    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 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Pour le premier code, tu peux mettre ceci?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		if (file.isFile()) {
     
    System.out.println("ceci est un fichier");
     
    } else {
     
    System.out.println("ceci est un fichier: "+file.getAbsolutePath());
    }
    Pour le second, est-ce que le dossier de destination existe bien, est-ce qu'il n'y a pas déjà un fichier avec ce nom là? Est-ce que le fichier n'est pas verrouillé par une application?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    541
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 541
    Points : 124
    Points
    124
    Par défaut
    Pour le second, est-ce que le dossier de destination existe bien, est-ce qu'il n'y a pas déjà un fichier avec ce nom là? Est-ce que le fichier n'est pas verrouillé par une application?
    Le dossier de destination existe bien, il n'y a pas de fichier avec ce nom là, et il n'est pas verrouiller par une application.

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    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 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Remplace le code par celui ci qui est le même et dis nous ce que ça sort.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    			File afile = new File("C:\\Users\\pc\\WEBAPPS\\files\\images\\test C\\test D_00.jpg");
    System.out.println("source file exists? "+aFile.exists());
    System.out.println("source file readable? "+aFile.canRead());
    System.out.println("source file writable? "+aFile.canWrite());
    File destFolder = new File("C:\\Users\\pc\\WEBAPPS\\files\\images\\test D");
    File destFile = nes File(destFolder,"test D_00.jpg");
    System.out.println("Destination folder exists? "+destFolder.exists());
    System.out.println("Destination folder writable? "+destFolder.canWrite());
    System.out.println("Destination file exists? "+destFile.exists());
     
    System.out.println("Rename? "+afile.renameTo(destFile));
    System.out.println("Destination file exists? "+destFile.exists());

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    541
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 541
    Points : 124
    Points
    124
    Par défaut
    Problème résolu, le problème venait du path qui contenant pas mal de caractères espaces, ce qui faisait qu'il ne reconnaissait pas le chemin.

    Merci d'avance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] mysqli_query retourne FALSE
    Par scorzen dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 24/02/2009, 11h04
  2. Réponses: 4
    Dernier message: 17/09/2008, 13h05
  3. Requete mysql effectuée mais qui retourne false?
    Par lysandre dans le forum Requêtes
    Réponses: 8
    Dernier message: 24/03/2008, 16h55
  4. [php 5.1.2][bug?]get_cfg_var retourne false
    Par jeff_! dans le forum Langage
    Réponses: 2
    Dernier message: 22/05/2006, 13h33
  5. [PDO] Ma requêtes préparées me retourne false
    Par jeff_! dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 03/05/2006, 22h07

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