Bonjour,

Est-ce que qq peut m'aider avec des regex,
Mon programme chaque fois affiche Date, MAX, Used et les valeurs trouver pour Date....
Alors que je voudrai bien afficher que une seul fois,
Par exemples:
Date MAX Used
2008 284 4
2007 555 4 etc...

Comment il faut faire? Je suis débutante! Merci en avance!

Code java : 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
 
import java.io.*;
 
public class parser {
    //repertoire contenant les fichiers sources
	private static final String dir="MONITOR/"; 
	private static FileOutputStream MyFile;	
    //	 constructeur de la classe parser et methode 
	//   l'option try car il se peut que il y aura une exception
	public parser(){  
		try {
			MyFile= new FileOutputStream("FINAL");
		}
		catch (FileNotFoundException e) {
			System.err.println("Fichier introuvable !");
		}		
	}	
	public void parsing(String f){
	 try
		{			
			BufferedReader b = new BufferedReader(new FileReader(f));
			// pour retrouver le nom de la ville si on est dans CatapultC Synthesis et afficher dans FINAL
			String c;
			// true si on est dans le cas de CatapultC Synthesis
			boolean catapult=false;
			boolean ville=false;
			//je recherche le mot Date			
			while((c=b.readLine())!=null){
 
				if(c.contains("Date")){
 
					MyFile.write(("    Date"+"             MAX"+" Used"+"\n").getBytes());
					MyFile.write((c.substring(90,109)+" ").getBytes());
				}
				//si je suis dans catapult alors je regarde 
				//si le mot LICENSE MAX et used  se trouve dans la ligne
				//et j'ecrits gras a methode write					
				if(catapult && ville){				
 
					if (c.contains("LICENSE MAX")){					
 
						MyFile.write((c.substring(64,67)).getBytes());
						MyFile.write((c.substring(63,67)).getBytes());
 
					}
					//meme chose avec tous info used + grenoble + catapult
					//if (c.contains("   used")){	
 
						//MyFile.write((c.substring(63,67)+"\n").getBytes());
						//MyFile.write(("    "+c.substring(13,20)+"\n").getBytes());
				    //}					
				}
 
				if (c.contains("GRENOBLE")){
					 ville=true; 
					// System.out.println("Je suis a Grenoble");
				}
 
				if(c.contains("NOIDA")||c.contains("CROLLES")){
					 ville=false;
				} 
				//true si CatapultC Synthesis faux sinon
				if(c.contains("CatapultC Synthesis")) {
					catapult=true;					
 
				}
				if(c.contains("Mentor SLEC")||c.contains("Library Builder")||c.contains("SLEC")||c.contains("SYNFORA")){
					catapult=false;
				}
			}
		}
 
		catch (FileNotFoundException e1) {
			System.err.println("Fichier introuvable !");
			e1.printStackTrace();
 
			System.exit(-1);
		} catch (IOException e2) {
			System.err.println("Problème de lecture !");
			System.exit(-1);
		}
 
	}
 
	public static void main(String args []) {
        //declaration et creation de mon objet de type parser
		parser fich=new parser (); 
 
		File cour = new File(dir);
 
		File[] fichs = cour.listFiles();
 
		long x = System.currentTimeMillis();
		for (int i=0; i<fichs.length;i++){
				fich.parsing(dir+fichs[i].getName());
		}
 
		x = System.currentTimeMillis() - x;
		System.out.println("Temps de traitement: "+x+" ms");
 
	}
 
}