Salut.
Je voudrais pouvoir stocker (donc pour y recup plus tard) des objets.
Je m'explique:
Je fais un appel JNI et il me retourne un objet de type CHardDisk contenant des infos sur le disque dur trouvé. L'appel JNI est effectué autant de fois qu'il y a de disque dur.
Je souhaiterai stocker l'objet retourné pour pouvoir le restituer plus tard.
J'ai essayé de stocker ds un tableau, ds un vecteur et grace a la serialization.
tableau et vector: le dernier objet est stocké dans tous les indexs crés et non 1 index 1 objet comme je le souhaiterai.
serialization: j'ai mes x objets de type CHardDisk les uns apres les autres, je ne peux donc pas les stocker ds un fichier car le serialize ne supporte pas le resume de fichier (d'apres ce que j'ai compris et d'apres ce que j'ai testé)
Exemple de creation d'un objet a stocker via un vecteur
Si j'essai de lire ensuite le vecteur grace a:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Vector listStock = new Vector (); /* nbs est le nb de disque durs present */ /* c est l'element que je recherche. ex dd n°1 puis n°2 puis... */ /* CRecupInfosDD lance l'appel de la fct JNI du meme nom */ for (int c = 1; c <=nbs; c++ ) { listStock.addElement(CRecupInfosDD(c)); }
Le system out retournera toujours la meme chose CAD le nom du dernier dd trouvé et non c: d: e: f: ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 for (int c = 0; c < nbs; c++ ) { HD = (CHardDisk)listStock.get(c); System.out.println(HD.retournernomdd()); }
Donc si qq un a une autre solution ou peut m'expliquer ce que je fais mal... je prends car je suis a court d'idées...
Partager