import javax.swing.*; import java.awt.event.*; import java.io.*; public class SaveButton implements ActionListener { private int GRID_SIZE; private JTextField[][] grid; public SaveButton(int GRID_SIZE, JTextField[][] grid ) { this.GRID_SIZE = GRID_SIZE; this.grid = grid; } @Override public void actionPerformed(ActionEvent e) { saveFichier(); } private void saveFichier() { try { FileOutputStream fr = new FileOutputStream("Test1.gri"); DataOutputStream fichier = new DataOutputStream(fr); JTextField[][] texte = grid; for (int i = 0; i < GRID_SIZE; i++) { StringBuilder build = new StringBuilder(); for (int j = 0; j < GRID_SIZE; j++) { String value = texte[i][j].getText(); if (value.isEmpty()) { build.append("0"); } else { build.append(value); } } String convert = build.toString(); int write = Integer.parseInt(convert); fichier.writeInt(write); } fichier.close(); JOptionPane.showMessageDialog(null, "Grille sauvegardée avec succès.", "Succès", JOptionPane.INFORMATION_MESSAGE); } catch (IOException e) { JOptionPane.showMessageDialog(null, "Erreur lors de la sauvegarde de la grille.", "Erreur", JOptionPane.ERROR_MESSAGE); e.printStackTrace(); } } }