Bonjour,
Existe t-il actuellement une méthode plus rapide que BufferedReader avec readLine() pour lire un fichier ligne par ligne ?
Cordialement,
Seb
Bonjour,
Existe t-il actuellement une méthode plus rapide que BufferedReader avec readLine() pour lire un fichier ligne par ligne ?
Cordialement,
Seb
En faite en C#, avec le même algo, cela prend moitié moins de temps. Je voudrais au moins égaler la performance voire l'améliorer.
Tu peux essayer d'augmenter la taille du BufferedReader progressivement jusqu'à 3Mo. Mais comme cela a été dit, pour un fichier de cette taille, je doute que ce soit la lecture qui prenne le plus de temp.
Sinon tu peux essayer avec les classes du package java.nio. On est souvent agréablement supris avec ce package (sur des fichiers supérieurs à 2Go, il m'est arrivé de voir les temps de traitement divisés jusqu'à 20 !).
Essai en utilisant le package java.nio
java.io utilise une philosophie de stream (gestion byte par byte) des données
java.nio utilise une philosophie de buffer (gestion block par block) des données
nio est plus efficace nottament pour les gros fichiers
Partager