11 min pour 60k lignes en java !!!

Bonjour,
voila dans un code que je viens d ecrire je lis un fichier en entree (xml) de plus de 63000 lignes et j utilise ensuite certaine expressions reguliere pour remplacer certaine sequence.

Pour lire le fichier j utilise un bufferReader qui lis ligne par ligne.

Probleme : 11 minutes pour lire ces 60 000 lignes !!!

Est ce normal ? y a t il un moyen plus rapide ?

Merci
Configuration: Linux Red Hat / Firefox 3.0.1

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Salut,

    et une fois que tu as remplacé tes séquences, tu fais quoi de tes données ?
    1. je passe dans 5 methode ( pour des regexp differentes) et ensuite, bah rien pour le moment^^, mais il faudra que je ressorte un xml modifie
      1. Modérateur
        Donc, vu que tu n'écris rien, pas de problème de buffers i/o, donc il faut se tourner vers les regex...

        Peut-être qu'elles sont optimisables ?
        1. a priori les regexp sont bonnes, tire d un script en PERL.

          Je ne sais pas trop quoi faire pour changer la vitesse...
          1. Modérateur
            Une regex n'est pas forcément fausse, mais il peut être possible de la simplifier voire de la scinder, si elle trop complexe...