Bonjour,

J'essaye d'écrire des valeurs (int) dans un fichier texte.
Je toutes les images se trouvant dans un dossier et je compte les pixels noirs de cette image.
Et je veux afficher dans mon fichier texte le nombre de pixels pour chaque image.

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
public class DetectionEtFichierTexte {
 
 
    public static void displayImage(File file, BufferedImage img) {
 
        int cptnoir = 0;
        int height = img.getHeight();
        int width = img.getWidth();
 
 
 
                for (int x = 0; x < width; x++)
                for (int y = 0; y < height; y++) {
 
                    int p = img.getRGB(x, y);
                    int r = (p>>16)&0xff;
 
                    if(r == 0){
                            cptnoir++;
                        }
 
 
        }
 
        System.out.println(" "+ file +  " " + cptnoir+ " ");
 
       //écrire les résultats dans un fichier texte
 
try {  
 
            File filetxt = new File("chemin\\Classification.txt");
 
        // if file doesnt exists, then create it
            if (!filetxt.exists()) {
            filetxt.createNewFile();
                		}
 
 
            FileWriter fw = new FileWriter(filetxt.getAbsoluteFile());
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(file + " = " + cptnoir + "");
 
            bw.close();
 
            System.out.println("Done");
 
		} catch (IOException e) {
			e.printStackTrace();
		}
 
    }
 
 public static void main(String[] args) {
 
 
        File path = new File("chemin");
        for (File file : path.listFiles()) {
            try {
                BufferedImage img = ImageIO.read(file);
                if (img != null)
                    displayImage(file, img);
            } catch (IOException e) {
                continue;
            }
         }   
 
    }
Donc j'ai bien un fichier texte qui s'affiche mais à l'intérieur je n'ai que la dernière valeur de mon compteur "cptnoir".
Pourtant dans ma console j'ai bien Les différentes valeurs affichées grace à mon System.out.println

Avez-vous une idée merci ?