[Débutant] Prob de return dans un TRY/CATCH/FINALLY
Bon, en gros, je n'ai pas l'habitude d'utiliser des try/catch/finally. J'ai cependant pris la peine de me renseigner sur le sujet. Même après recherche, je ne trouve pas mon erreur :s. N'aurais je pas compris les finesses des expressions?
Ne prend-t-il pas en compte mes assignations de variables? (autant dans le try que dans le catch)
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
| public static RegistreUtilisateurs lireFichier(){
Fichier regUtilisateurs = new Fichier(NOM_FICHIER);
try {
regUtilisateurs.ouvrirEnLecture();
while( true ) { // on quitte cette répétitive lorsque la fin du fichier
// est atteinte. Une "EOFException" est lancée.
RegistreUtilisateurs registre = (RegistreUtilisateurs) regUtilisateurs.lireObjet();
System.out.println( registre );
}
}
catch ( java.io.EOFException ex) { // fin du fichier rencontrée
System.out.println( "fin du fichier rencontrée." );
}
catch ( java.io.IOException ex) { // problème I/O (si le fichier n'existe pas)
System.out.println( "problème I/O (le fichier peut ne pas exister): \t" + ex );
RegistreUtilisateurs registre = new RegistreUtilisateurs();
}
catch ( Exception ex) { // autre type d'erreur
System.out.println( "erreur : \t" + ex );
}
finally { // quoi qu'il arrive, il doit essayer de fermer le fichier.
fermerFichier(regUtilisateurs);
return registre;
}
} |
Mon problème vient du fait qu'il me signale que ma variable 'registre' est inconnue :/.
:arrow:
pgmTest.java:37: cannot find symbol
symbol : variable registre
location: class pgmTest
return registre;