Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de sérialisation [Java]

Sujet résolu
    23 novembre 2007 à 23:08:58

    Bonsoir,

    j'ai un problème avec la sérialisation d'objet en Java, l'erreur ne se produit pas lors de la compilation mais lors de l'exécution.

    Voici les deux classes que j'utilise :
    1. package principal;
    2. import java.io.FileOutputStream;
    3. import java.io.IOException;
    4. import java.io.ObjectOutputStream;
    5. public class Main {
    6.         public static void main(String[] args){
    7.                 Classe obj;
    8.                 obj = new Classe(5, "toto tata titi", 6.2);
    9.                 obj.Afficher();
    10.                 FileOutputStream out;
    11.                 try{
    12.                         out = new FileOutputStream("fichier.obj");
    13.                         ObjectOutputStream s;
    14.                         s = new ObjectOutputStream(out);
    15.                         s.writeObject(obj);
    16.                         s.flush();
    17.                         s.close();
    18.                 }catch(IOException e1){
    19.                         e1.printStackTrace();
    20.                 }
    21.         }
    22. }


    1. package principal;
    2. public class Classe {
    3.         int attribut1;
    4.         String attribut2;
    5.         double attribut3;
    6.         public Classe(int _att1, String _att2, double _att3){
    7.                 this.attribut1 = _att1;
    8.                 this.attribut2 = _att2;
    9.                 this.attribut3 = _att3;
    10.         }
    11.         public void Afficher(){
    12.                 System.out.println(this.attribut1+" "+this.attribut2+" "+this.attribut3);
    13.         }
    14. }


    Voici le message que la console me retourne :

    java.io.NotSerializableException: principal.Classe
            at java.io.ObjectOutputStream.writeObject0(Unknown Source)
            at java.io.ObjectOutputStream.writeObject(Unknown Source)
            at principal.Main.main(Main.java:18)


    Merci d'avance pour l'aide que vous pourrez m'apporter ;)
    • Partager sur Facebook
    • Partager sur Twitter
      24 novembre 2007 à 0:24:41

      pour pouvoir serialiser une classe il faut qu'elle implément ISerialize (de mémoire).
      • Partager sur Facebook
      • Partager sur Twitter
        24 novembre 2007 à 1:30:33

        Tu m'as mis sur la bonne voie ! Je viens de regarder un tutoriel et j'ai remarqué ceci :

        1. public class Classe implements java.io.Serializable {


        Ca fonctionne ;) Merci !
        • Partager sur Facebook
        • Partager sur Twitter

        Problème de sérialisation [Java]

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown