IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Probleme de Sérialisation


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 41
    Par défaut Probleme de Sérialisation
    Bonsoir a tous,
    Je voudrais savoir comment je peux serialiser un Vector pour ensuite le recuperer...

    Pour cela je le déclare en Private
    et dans la methode save, je pense l'ecrire dans un fichier
    mais quand je veux le retrouver , dans ma methode load
    Il m'apparait vide

    Si quelqu'un connait les principes de serialization merci de son aide

    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
     
    private transient Vector vecteurAction
    ....
     
    public void save(String s)
    {
    	FileOutputStream fos = null;
    	ObjectOutputStream out = null;
    	try
    	{
    		fos = new FileOutputStream(s);
    		out = new ObjectOutputStream(fos);
    		out.writeObject(this.vecteurAction);
    		out.close();
    	}
    	catch(IOException ex)
    	{
    		ex.printStackTrace();
    	}
    }
     
    public void load(String s)
    {
    	FileInputStream fis = null;
    	ObjectInputStream in = null;
    	try
    	{
    		fis = new FileInputStream(s);
    		in = new ObjectInputStream(fis);
    		this.vecteurAction = (Vector)in.readObject();
    		in.close();
    	}
    	catch(IOException ex)
    	{
    		ex.printStackTrace();
    	}
    	catch(ClassNotFoundException ex)
    	{
    		ex.printStackTrace();
    	}
    }
    PS: J'ai recopié une partie du code a partir de java.sun.com

  2. #2
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Je croyais que que dans une classe un attribut "transient" (donc Vector justement) signifiait qu'il ne sera pas sérialisé ?!...

  3. #3
    Membre averti
    Inscrit en
    Février 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 41
    Par défaut
    Citation Envoyé par g_rare
    Je croyais que que dans une classe un attribut "transient" (donc Vector justement) signifiait qu'il ne sera pas sérialisé ?!...
    Je ne l'avais pas mis au depart mais ca ne semble pas changer mon probleme...
    Je vais quand meme verifier

    Est ce que je dois creer une boucle pour parcourir tout le vecteur ou une simple Serialisation du vecteur suffit ?

  4. #4
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Citation Envoyé par minimoi1234
    Est ce que je dois creer une boucle pour parcourir tout le vecteur ou une simple Serialisation du vecteur suffit ?
    Vector étant Serializable, une simple "writeObject" dessus suffit.
    A+

  5. #5
    Membre averti
    Inscrit en
    Février 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 41
    Par défaut
    Citation Envoyé par g_rare
    Vector étant Serializable, une simple "writeObject" dessus suffit.
    A+
    Merci bien, je vais continuer dans ce sens alors

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Il faut aussi que les données stockées dans ton Vector soient elles aussi sérialisable.
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

Discussions similaires

  1. Sérialisation probleme fichier généré
    Par linuxien_62 dans le forum Persistance des données
    Réponses: 1
    Dernier message: 09/01/2013, 22h42
  2. Probleme sérialisation XML
    Par gwendal86 dans le forum C#
    Réponses: 1
    Dernier message: 10/11/2008, 16h31
  3. Probleme sur les chaines de caractere
    Par scorpiwolf dans le forum C
    Réponses: 8
    Dernier message: 06/05/2002, 19h01
  4. [Kylix] Probleme d'execution de programmes...
    Par yopziggy dans le forum EDI
    Réponses: 19
    Dernier message: 03/05/2002, 14h50
  5. [Kylix] Probleme de nombre flottant!!
    Par yopziggy dans le forum EDI
    Réponses: 5
    Dernier message: 02/05/2002, 10h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo