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 :

itérateur d'un fichier traité ligne par ligne a une limite incompréhensible


Sujet :

Java

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    108
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 108
    Points : 47
    Points
    47
    Par défaut itérateur d'un fichier traité ligne par ligne a une limite incompréhensible
    bonjour
    je travaille sur une méthode Java permettant le parsing dans une boucle for infini d'un texte ligne par ligne. comme vous voyez dans le code suivant, j'affecte le contenu d'un bufferReader à une liste .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    BufferedReader br = new BufferedReader(new FileReader("C:/feed.txt"));
                String strLine;
                ArrayList list = new ArrayList();    
    while ((strLine = br.readLine()) != null) {
                    list.add(strLine);
    ça marche parfaitement et contenu de feed.txt est affecté totalement au arrayList (je l'ai affiché) avec 18238 lignes.
    Mais quand j'ai essayé d'utiliser le contenu de la liste dans un dans une boucle for (le code suivant), un problème fait surface:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Iterator itr;  
    for (itr = list.iterator(); itr.hasNext();) { 
        String str = itr.next().toString();
    }
    les instruction et les business processes fonctionnent parfaitement à l'intérieur de la boucle, jusqu'à la ligne numéro 5175 quand le programme arrête son itération. c'est un probleme lié au parce que il n'y a rien de spécial à propos de cette ligne . Même en la supprimant , le problème persiste toujours .
    es ce que le possède une limitation que je ne connais pas ? comment l'augmenter ?
    je suis sensé réaliser une boucle qui fonctionne à l'infini!!!
    pouvez vous m'aider svp ?

  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
    l'iterator n'a pas de limitation. Comme se produit l'arrêt?
    Exception? -> donne là
    Sortie pure et simple de la boucle? -> Tu es arrivé au bout de l'ArrayList. Il n'y a rien de plus.
    Combien tu fis d'itération? Que vaut list.size()?

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    108
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 108
    Points : 47
    Points
    47
    Par défaut
    la donne la liste est de 18238.
    soit le nombre de ligne que je vous ai déjà prévenu de leur existence .
    Le problème est que j'ai pas d'exceptions affichés.
    je me suis rendu compte du problème en calculant le nombre des itérations (5175). et surtout en voyant que certains business process sensé se déclencher à la fin du fichier n'ont pas fonctionné, n'ont pas de valeurs affectées, vu que le parsing de l's'arrête au niveau du tiers du fichier sans raisons valables !!! .
    ces mêmes business process fonctionnent normalement au milieu du fichier.
    je les ai supprimé et le problème persiste toujours.
    impossible que le problème soit lié à mes business process .

  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
    Citation Envoyé par roy-mustang Voir le message
    et surtout en voyant que certains business process sensé se déclencher à la fin du fichier n'ont pas fonctionné, n'ont pas de valeurs affectées, vu que le parsing de l's'arrête au niveau du tiers du fichier sans raisons valables !!! .
    Montre nous ton code réel et comment tu gère réellement ton iterator alors. Il y a fort à parier que ce sont tes codes qui foutent le boxon.

  5. #5
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    108
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 108
    Points : 47
    Points
    47
    Par défaut
    vous avez raison , je dois identifier mon problème et reformuler ma question . si c'est possible j'espère que l'un des modérateur du forum supprimera ce sujet !
    merci

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 96
    Points : 98
    Points
    98
    Par défaut
    Bonjour,

    Est-ce que par hasard tu ne modifierais pas le contenu de la liste que tu parcours avec ton iterator ?

    Si c'est le cas les iterator ils aiment pas.

Discussions similaires

  1. Traiter ligne par ligne le résultat d'une requête
    Par pupucette dans le forum PL/SQL
    Réponses: 40
    Dernier message: 22/05/2012, 14h31
  2. Réponses: 8
    Dernier message: 04/07/2011, 14h16
  3. [debutant]lecture fichier ligne par ligne
    Par Battosaiii dans le forum C
    Réponses: 2
    Dernier message: 13/11/2005, 19h02
  4. lire un fichier ligne par ligne
    Par peuf23 dans le forum C
    Réponses: 6
    Dernier message: 21/09/2005, 10h43

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