Bonjour, j'ai un petit problème...
J'ai créé une classe EnsPersonne contenant une ArrayList, c'est un programme bidon, mais juste pour s'exercer ^^
Le problème, c'est que je peux créer une personne, l'enregistrer(1 ou plusieurs même ^^') mais le problème viens quand je veux lire le fichier pour les remettre dans l'ArrayList...j'obtiens une EOFException, qui est bien une erreur de fin de fichier...
Voici ma méthode "charge" permettant de charger mon ArrayList :
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 public void charge(String nomFic){ ObjectInputStream ois = null; try{ ois = new ObjectInputStream(new BufferedInputStream(new FileInputStream(new File(nomFic+".txt")))); try{ //Personne p = (Personne)ois.readObject(); while(ois.readObject() != null) this.liste.add((Personne)ois.readObject()); } catch (ClassNotFoundException e) { e.printStackTrace(); } ois.close(); } catch (FileNotFoundException e){ e.printStackTrace(); } catch(IOException e){ System.out.println(e); e.printStackTrace(); } }
Voilà, j'ai pensé ajouter un finally, mais je ne sais pas vraiment quoi mettre dedans, car je voudrais fermer absolument le flux, mais il me met qu'il faut initialiser ma variable ois...mais il me demande de le mettre dans un try/catch normal, mais bon...
et dans mon fichier pour appeler la méthode "charge" je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 try{ liste.charge(nomFic); } catch(Exception er){ System.out.println(er); }
Voilà...je ne sais pas comment résoudre ce problème...si quelqu'un à une idée...
Merci d'avance !!
Partager