Relire un fichier avec bufferedReader plusieurs fois
Résolu
ryen224
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
je veut parcourir un fichier plusieurs fois avec l'objet de type BufferedReader , quand je met:
ou bien:
ou:
le fichier est parcouru q'une seule fois.
comment je peut regler ce probleme?? aider moi svp!!
mercii d'avance!!
je veut parcourir un fichier plusieurs fois avec l'objet de type BufferedReader , quand je met:
for(int i=0;i<26;i++){
ligne=lire2.readLine();
while((ligne)!=null)
{
.........
ligne=lire2.readLine();
}}
ou bien:
for(int i=0;i<26;i++){
while((ligne=lire2.readLine())!=null)
{
.........
}}
ou:
lire1=new BufferedReader(...);
le fichier est parcouru q'une seule fois.
comment je peut regler ce probleme?? aider moi svp!!
mercii d'avance!!
1 réponse
-
Bonjour,
Quel intérêt de lire plusieurs fois le même fichier ?
Les accès aux fichiers sont coûteux, pour de petits fichiers (ce qui est le cas de la plupart des programmes) il vaut mieux travailler sur une copie du fichier chargé en mémoire.
Mais sinon, pour lire plusieurs fois le même fichier, tu devrais regarder la méthode reset de BufferedReader pour "rembobiner" le flux.
https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#reset--