Bonjour à tous,
Je souhaite réaliser un programme qui permet de lire un fichier texte et fournir plusieurs fichiers textes en sortie. Le fichier d'entrée subira un parsing (ligne par ligne). S'il trouve "*TEXT ", alors il va rassembler les lignes et les écrire dans un nouveau fichier jusqu'à ce qu'il trouvera la prochaine "*TEXT ",un nouveau fichier ainsi de suite.
Mon fichier contient 425 fois "*TEXT ", donc j'obtiendrai normalement 425 fichiers texte en sortie. J'obtient qu'un seul fichier et qui est vide. Est-il possible de m'indiquer où est l'erreur.
Voici mon code

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
 
import java.io.*;
public class ReadFile {
	public static void main(String[] args){
		String chaine = "";
		String fichier = "TIME.ALL";
                String chercher = "*TEXT ";
		int i=0;
                int res;
                String ligne;
		//lecture du fichier texte	
		try{
			InputStream ips = new FileInputStream(fichier); 
			InputStreamReader ipsr = new InputStreamReader(ips);
			BufferedReader br = new BufferedReader(ipsr);
			while ((ligne=br.readLine())!=null){
 
				//System.out.println(ligne);
                                res= ligne.indexOf(chercher);
                                System.out.println(ligne);
                                System.out.println(res);
                                // S'il trouve "recherche" dans la ligne, i s'incrémente pour le numéro de fichier
                                if (res == 0) 
                                {i=i+1; }
                                //S'il ne trouve pas "recherche", incrémentation de chaine qui va ^étre écrite dans le fichier
                                while (res == -1)
                                {
                                   chaine+=ligne+"\n"; 
                                }
                                PrintWriter pw = new PrintWriter (new BufferedWriter (new FileWriter ("Fichier"+i+".txt", true)));
                                pw.println (chaine); 			}
 
 
			br.close(); 
                        pw.close();
                        System.out.println("Le fichier " + fichier + " a été créé!");
		}		
		catch (Exception e){
			System.out.println(e.toString());
		}
 
 
	}
}
Merci pour toute sorte d'aide