Recuperer plusieurs objet stockés dans un fichier via ObjectInputStream
Bonjour,
Je voudrais recuperer les objets stockés dans un fichier texte.
Le script que j'ai fait ne recupere que le premier objet stocké dans le fichier, pas le reste.
Savez vous comment faire svp ?
Voici la classe objet:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| import java.io.*;
import java.util.*;
public class FamilyMember implements Serializable {
String nom;
int age;
FamilyMember() {
Scanner lectureClavier = new Scanner(System.in);
System.out.println("Rentrer le nom de la personne");
nom = lectureClavier.next();
System.out.println("Rentrer l age de la personne");
age = lectureClavier.nextInt();
}
FamilyMember(String n,int a) {
nom = n;
age = a;
}
public void afficherMembreFamille() {
System.out.println(nom+" a "+age+" ans.");
}
} |
Et voici le main :
Code:
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 42 43 44
| import java.io.*;
public class FamilyMgmt {
public static void main(String[] args) throws FileNotFoundException,IOException,ClassNotFoundException, StreamCorruptedException {
FamilyMember FM1 = new FamilyMember();
FamilyMember FM2 = new FamilyMember();
//Stocker dans fichier
ObjectOutputStream ofW = new ObjectOutputStream(new FileOutputStream("fileFamilyMembers.txt",true));
ofW.writeObject(FM1);
ofW.writeObject(FM2);
ofW.close();
//Obtenir le contenu du fichier
ObjectInputStream ofR = new ObjectInputStream(new FileInputStream("fileFamilyMembers.txt"));
try {
while (true) {
FamilyMember newFM = (FamilyMember) ofR.readObject();
newFM.afficherMembreFamille();
}
}
catch (Exception e) {
System.out.println("passe A");
}
try {
while (true) {
FamilyMember newFM = (FamilyMember) ofR.readObject();
newFM.afficherMembreFamille();
}
}
catch (Exception e) {
System.out.println("passe B");
}
}
} |
Merci
Cedric