Re: Probleme de try - catch
Citation:
Envoyé par Slumpy
1) Je ne vois pas comment faire pour qu'il me donne la valeur de la somme qu'une foi toute la lecture effectué. Car je ne peux pas mettre l'affichage de la somme (total) en dehors de la boucle while car quand il rencontre une exception il quitte la boucle try (si j ai bien compris :p).
Je ne vois pas où est le problème. Si il rencontre une exception, c'est qu'il y a eu un problème, donc que ça a foiré, donc que ton résultat risque d'être faux.
Met l'affichage à la sortie de ton while.
Citation:
Envoyé par Slumpy
2) Quel est la difference entre :
Code:
while(! EOF)
et
Code:
while(d != null)
?
C'est quoi ce EOF? Jamais utilisé en Java....
d est la dernière lecture dans ton fichier. Si il s'agit de la fin du fichier, il n'y a plus rien à lire, donc ta variable d sera à null (par opposition à "si il y a quelque chose à lire, alors d prendra cette valeur-là").
Citation:
Envoyé par Slumpy
3) comme j'ai dis au debut, j ai mis c'est catch plus ou moins au pif, comment sais t on exactement quel catch on doit inserer svp?
Ouahou, de la programmation à larache! Cool!
Alors, quand on essaye de programmer, on consulte un minimum la documentation du langage que l'on utilise. Pour Java, ça s'appelle la Javadoc.
Quand tu prends la Javadoc, que tu vas voir par exemple la classe FileInputStream, tu lis:
Code:
1 2 3 4
| FileInputStream
public FileInputStream(File file)
throws FileNotFoundException |
En gros, ce constructeur est susceptible de lancer une exception de type FileNotFoundException en cas de problème. C'est celle-ci que tu dois intercepter dans ton catch pour la traiter (ou plus si affinité).
Il faut savoir que tu peux traiter toutes les exceptions, sans préciser le type, en faisant un:
Code:
1 2
|
catch(Exception e){ ... } |
comme tu as fait à la fin de ton code, mais alors le traitement sera le même quelque soit l'exception. Donc si tu veux un traitement spécifique pour un type d'exception, il faut utiliser un catch spécifique.
Il va te falloir parcourir ton code pour repérer toutes les méthodes qui peuvent renvoyer un exception, et les traiter.
Les EDI "modernes" sont un bon outil pour cela, ils te signalent toutes les exception non "catchées".