Bonjour à tous !
Je retourne encore vers vous pour m'aider dans la sérialization. J'ai réussi à coder cette partie de code, mais quand j'essaie de lancer la procédure, j'ai énormément d'erreur (je travaille sur netbeans).
Et voici la deserialization
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 public void Serialization(Evenement evenement){ try { //ouverture d'un flux de sortie vers le fichier "personne.serial" FileOutputStream fos = new FileOutputStream("Scalendrier.txt"); // création d'un "flux objet" avec le flux fichier ObjectOutputStream oos= new ObjectOutputStream(fos); try { // sérialisation : écriture de l'objet dans le flux de sortie oos.writeObject(evenement); // on vide le tampon oos.flush(); System.out.println(evenement.getLieu() + " a ete serialise"); } finally { //fermeture des flux try { oos.close(); } finally { fos.close(); } } } catch(IOException ioe) { ioe.printStackTrace(); } }
Vous voyez quelque chose qui cloche ou pas ?
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 public void Dezerialization(){ Evenement ev = null; try { // ouverture d'un flux d'entrée depuis le fichier "Serialization_calendrier.serial" FileInputStream fis = new FileInputStream("Scalendrier.txt"); // création d'un "flux objet" avec le flux fichier ObjectInputStream ois= new ObjectInputStream(fis); try { // désérialisation : lecture de l'objet depuis le flux d'entrée ev = (Evenement) ois.readObject(); } finally { // on ferme les flux try { ois.close(); } finally { fis.close(); } } } catch(IOException ioe) { ioe.printStackTrace(); } catch(ClassNotFoundException cnfe) { cnfe.printStackTrace(); } if(ev != null) { System.out.println(ev.getLieu() + " a ete deserialise"); }
L'objet que je sérialise est :
Apparemment, l'erreur viendrait de cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Evenement evenement = new Evenement(txtobjet.getText(),txtlieu.getText()); Serialization(evenement);
Code : Sélectionner tout - Visualiser dans une fenêtre à part ev = (Evenement) ois.readObject();
Partager