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

Java Discussion :

Probleme d'espace lecture CSV


Sujet :

Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 35
    Points : 27
    Points
    27
    Par défaut Probleme d'espace lecture CSV
    Bonjour à tous,

    j'ai un petit problème :
    Lors de la lecture d'un fichier CSV il y a des espaces qui se rajoutent automatiquement.

    Par exemple: "bonjour" se transforme en "b o n j o u r"

    j'ai tenté restaurer le texte original en faisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String s =s.replaceAll(" ","" );
    mais sans succès

    voici le code:
    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
     
        public static List<String> readFile() throws IOException {
     
        	String chemin ="war/data/test.csv";
     
            List<String> result = new ArrayList<String>();
            BufferedReader fichier_source = new BufferedReader(new FileReader(chemin));
            String chaine;
            while((chaine = fichier_source.readLine())!= null){
            	result.add(chaine);
            	chaine = fichier_source.readLine();
            }
     
            fichier_source.close();  
            return result;
        }
    Un peu d'aide serait bienvenue

    Merci

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 084
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 084
    Points : 7 996
    Points
    7 996
    Par défaut
    Ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String s = "B o n   J o u   rmonsieur";
    s =s.replaceAll(" ","" );
    System.err.println("S == "+s);
    donne bien [S == BonJourmonsieur]

    le problème doit venir d'ailleurs
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 6
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Deux choses: d'une part, il serait peut-être utile de voir le CSV car le problème pourrait venir de là avec des espaces superflus (par exemple).
    Sinon le code suivant :
    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
     
     public static List<String> readFile() throws IOException {
     
        	String chemin ="war/data/test.csv";
     
            List<String> result = new ArrayList<String>();
            BufferedReader fichier_source = new BufferedReader(new FileReader(chemin));
            String chaine;
            while((chaine = fichier_source.readLine())!= null){ // lecture d'une ligne
            	result.add(chaine);
            	chaine = fichier_source.readLine(); // lecture d'une deuxième ligne
            }
     
            fichier_source.close();  
            return result;
        }
    Va sauter des lignes et je ne sais pas si cela est volontaire. J'aurais tendance à simplement écrire pour la boucle while:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    String chaine;
    while((chaine = fichier_source.readLine())!= null){
    	result.add(chaine);
    }

Discussions similaires

  1. lecture csv probleme
    Par lemessindu57 dans le forum C++
    Réponses: 2
    Dernier message: 09/12/2010, 10h02
  2. Réponses: 3
    Dernier message: 23/08/2006, 16h30
  3. Réponses: 2
    Dernier message: 24/06/2004, 09h13
  4. Probleme d'espace disque (= 0)
    Par infotron dans le forum Administration système
    Réponses: 12
    Dernier message: 01/06/2004, 18h29
  5. probleme d'espace
    Par hawax dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 03/12/2003, 18h31

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