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 :

Lire un fichier avec répertoire avec des espaces


Sujet :

Entrée/Sortie Java

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

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

    Informations forums :
    Inscription : Août 2002
    Messages : 237
    Points : 185
    Points
    185
    Par défaut Lire un fichier avec répertoire avec des espaces
    Bonjour,

    Je n'arrive pas à lire un fichier qui se trouve dans un chemin avec un répertoire qui possède des espaces. Si je supprime les espaces ça fonctionne.

    Il me remplace les espaces avec des %20

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    URL url = ClassLoader.getSystemResource(fichier);
    File file = new File(url.getFile());
    Avez vous une explication ?
    Merci.

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

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

    Informations forums :
    Inscription : Août 2002
    Messages : 237
    Points : 185
    Points
    185
    Par défaut
    Pour être plus précis le "new File" passe mais c'est le "new FileInputStream" qui génère le "fileNotFoundException"

    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
    Exception levée : java.io.FileNotFoundException: Z:\ExtractionInjection\te%20st\extraction2.xml (Le chemin d'accès 
    spécifié est introuvable)
    Message : Z:\ExtractionInjection\te%20st\extraction2.xml (Le chemin d'accès spécifié est introuvable)
       Trace : 
       java.io.FileInputStream.open(Native Method)
       java.io.FileInputStream.<init>(FileInputStream.java:103)
       com.efluid.edk.echange.xml.XMLDocumentUtil.lireDocumentXML(Unknown Source)
       com.hermes.arc.commun.batch.businessprocess.BatchArchi.doReadDefinition(BatchArchi.java:141)
       com.hermes.arc.commun.batch.businessprocess.ExtractionInjectionBatch.doLireDefinition(ExtractionInjectionBatch.java:
       235)
       com.hermes.arc.commun.batch.businessprocess.ExtractionInjectionBatch.recuperationFichierParametrageXML(ExtractionInj
       ectionBatch.java:225)
       com.hermes.arc.commun.batch.businessprocess.ExtractionInjectionBatch.init(ExtractionInjectionBatch.java:206)
       com.hermes.arc.batch.businessprocess.CommonStep.initialize(Unknown Source)
       com.hermes.arc.batch.businessprocess.CommonStep.execute(Unknown Source)
       com.hermes.arc.batch.lanceur.StepLauncher.main(Unknown Source)

  3. #3
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Et avec :
    ?

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

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

    Informations forums :
    Inscription : Août 2002
    Messages : 237
    Points : 185
    Points
    185
    Par défaut
    Le ".toURI()" vient de l'objet FILE, non ?

  5. #5
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

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

    Informations forums :
    Inscription : Août 2002
    Messages : 237
    Points : 185
    Points
    185
    Par défaut
    Solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    URI uri = new URI(url.toString());
    File file = new File(uri.getPath());
    Cela permet de remplacer les %20 par des espaces

    Idem ®om à quelque chose près

    Sinon il y a l'URLDecoder :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File propsFile = new File(URLDecoder.decode(url.getFile()));

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/11/2013, 18h43
  2. [QtGui] Liste des fichiers/sous-répertoires avec QListView
    Par bul dans le forum PyQt
    Réponses: 5
    Dernier message: 21/05/2011, 06h14
  3. Réponses: 3
    Dernier message: 19/02/2011, 23h01
  4. Réponses: 1
    Dernier message: 25/04/2009, 16h45
  5. Lire un fichier d'entier avec SDL en C
    Par gsaly dans le forum SDL
    Réponses: 15
    Dernier message: 07/05/2007, 20h41

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