67 lines
1.8 KiB
Java
67 lines
1.8 KiB
Java
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) {
|
|
if (GrilleValide()) {
|
|
saveFichier();
|
|
} else {
|
|
JOptionPane.showMessageDialog(null, "La grille n'est pas valide.", "Erreur", JOptionPane.ERROR_MESSAGE);
|
|
}
|
|
}
|
|
|
|
//vérifier si la grille est valide
|
|
public boolean GrilleValide() {
|
|
// à completer
|
|
return true;
|
|
}
|
|
|
|
public void saveFichier() {
|
|
try {
|
|
FileWriter fr = new FileWriter("GrilleNum1.txt");
|
|
BufferedWriter fichier = new BufferedWriter(fr);
|
|
for (int i = 0; i < GRID_SIZE; i++) {
|
|
for (int j = 0; j < GRID_SIZE; j++) {
|
|
String value;
|
|
if (grid[i][j].getText().isEmpty()) {
|
|
value = "0";
|
|
} else {
|
|
value = grid[i][j].getText();
|
|
}
|
|
fichier.write(value);
|
|
}
|
|
fichier.newLine();
|
|
}
|
|
try {
|
|
fichier.close();
|
|
} catch (IOException e) {
|
|
System.err.println("Erreur de fermeture");
|
|
}
|
|
JOptionPane.showMessageDialog(null, "Grille sauvegardé avec succès.", "Succes", JOptionPane.INFORMATION_MESSAGE);
|
|
} catch (IOException e) {
|
|
JOptionPane.showMessageDialog(null, "Erreur lors de la sauvegarde de la grille.", "Erreur", JOptionPane.ERROR_MESSAGE);
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|
|
|
|
|