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 :

BufferedWriter ne ramène pas toutes les lignes


Sujet :

Entrée/Sortie Java

  1. #1
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 80
    Points : 56
    Points
    56
    Par défaut BufferedWriter ne ramène pas toutes les lignes
    bonjour,
    j'utilise BufferedWriter pour copier les lignes d'un fichier .txt vers un autre, mais pas toutes les lignes sont copiées. Ils n'en copie que 1000 a peu pré et mon fichier en contient 2000. quelqu'un sait comment résoudre ce problème?
    merci
    fazo

  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,

    Citation Envoyé par ceriise Voir le message
    quelqu'un sait comment résoudre ce problème?
    En corrigeant le bug qu'il y a dons ton code cela devrait mieux marcher...

    a++

  3. #3
    Membre expert
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Points : 3 401
    Points
    3 401
    Par défaut
    Il nous faut ton code source pour t'aider

  4. #4
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 80
    Points : 56
    Points
    56
    Par défaut
    pas de problemes
    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
    public class Seperate_DS_SG {
     
        /** Creates a new instance of Seperate_DS_SG */
        public Seperate_DS_SG() {
        }
     
        public static void main (String[]args)
        {
            BufferedReader in = null;
            PrintWriter out_SG = null;
            PrintWriter out_DS = null;
            int sg = 0;
            int ds = 0;
            int num_lignes = 0;
            try{
                in = new BufferedReader(new FileReader("C:/Documents and Settings/ELAOUFIR/Desktop/metadata_SGDS_EN.txt"));
                out_SG = new PrintWriter(new FileWriter("C:/Documents and Settings/ELAOUFIR/Desktop/metadata_SG_EN.txt"));
                out_DS = new PrintWriter(new FileWriter("C:/Documents and Settings/ELAOUFIR/Desktop/metadata_DS_EN.txt"));
     
                 while (in.readLine()!=null)
            {
                    num_lignes ++ ;
                    String line = in.readLine();
                if (line.indexOf("SG")!=-1)
                {
                        sg++;
                    out_SG.println(line);
                    out_SG.flush();
                }
     
                else if (line.indexOf("DS")!=-1)
                {
                        ds++;
                    out_DS.println(line);
                    out_DS.flush();
                }
     
                ///System.out.println(line);
     
            }
                System.out.println("DS: "+ds);
                System.out.println("SG: "+sg);
                System.out.println("lignes: "+num_lignes);
            }       
     
            catch (Exception e)
            {
                e.printStackTrace();
            }
     
     
        }
     
    }
    en fait c'est le buffered reader qui n'en ramène que 1013 au lieu de 2026
    voila

  5. #5
    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
    Tu lis deux lignes par itérations mais tu n'en traites qu'une seule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (in.readLine()!=null) // LIGNE 1
    {
            num_lignes ++ ;
            String line = in.readLine(); // LIGNE 2
    Généralement on utilise plutôt quelque chose du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	String line;
    	while ((line = in.readLine()) != null) {
    		// Traitement de la ligne
    	}

    Enfin deux remarques :


    a++

  6. #6
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 80
    Points : 56
    Points
    56
    Par défaut
    meerciiiiii
    c'est résolu

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

Discussions similaires

  1. Console n'affiche pas toute les lignes dés le début
    Par maestro_mirou dans le forum Débuter
    Réponses: 13
    Dernier message: 28/05/2012, 23h12
  2. [ODBC] ODBC ne me retourne pas toutes les lignes
    Par jfleost dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 14/02/2012, 13h59
  3. [Débutant] écrire dans excel mais pas toutes les lignes
    Par lauri-anne dans le forum MATLAB
    Réponses: 2
    Dernier message: 14/07/2010, 11h35
  4. Logminer: ne voit pas toutes les lignes
    Par learaph dans le forum Administration
    Réponses: 3
    Dernier message: 06/02/2009, 12h18
  5. [JXTable] Tri mais pas sur toutes les lignes
    Par grabriel dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 12/07/2007, 09h17

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