Mais c'est que j'me fais engueuler, vindioouuuuu !!!![]()
Blague à part, j'ai procédé par tâtonnement et si je ne fais pas de tableaux de "files" et "fis", ça ne fonctionne pas.
Que risque t-il de se passer si je ne clos pas mon inputStream ?
Mais c'est que j'me fais engueuler, vindioouuuuu !!!![]()
Blague à part, j'ai procédé par tâtonnement et si je ne fais pas de tableaux de "files" et "fis", ça ne fonctionne pas.
Que risque t-il de se passer si je ne clos pas mon inputStream ?
Le problème n'est pas dans l'utilisation de tableaux ou pas, il est ailleurs.
Que tes fichiers soient verrouillés la prochaine fois que tu essayes d'y accèder, ou qu'une autre application essaye. En plus que des ressources internes (buffer par exemple) occupent de la mémoire pour rien, que des handles de fichiers soient réservés pour rien par le système. En écriture, c'est pire : ils ne pourraient ne pas être complets au final, voire totalement inacessibles. De toute façon, quelqu'en soit les raisons, c'est une habitude à prendre de toujours fermer les inputstream et les outputstreams, ça doit devenir un réflexe. Ce n'est pas juste pour le plaisir de faire les choses comme il faut. C'est comme le nom des variables, on peut appeler ses variables Q12ApAOLKJsqeZzZE61C53BkrtAf0F ou zzA12zB$¤MBzzZZ¤2114oueFD_EiuµziQe£$£So000iu ou , ça empêche pas le programme de fonctionner, mais c'est quand même plus clair et plus propre, et plus facile à déboguer le cas échéant, quand le nom signifie quelque chose en rapport avec ce à quoi elles servent, et pas l'inverse de ce que c'est.
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
C'est noté, Ohhhh vénérable de la montagneQue tes fichiers soient verrouillés la prochaine fois que tu essayes d'y accèder, ou qu'une autre application essaye. En plus que des ressources internes (buffer par exemple) occupent de la mémoire pour rien, que des handles de fichiers soient réservés pour rien par le système. En écriture, c'est pire : ils ne pourraient ne pas être complets au final, voire totalement inacessibles. De toute façon, quelqu'en soit les raisons, c'est une habitude à prendre de toujours fermer les inputstream et les outputstreams, ça doit devenir un réflexe.![]()
En gros c'est comme pour les "Scanner", à la différence qu'Eclipse le signale (me semble t-il), si un "Scanner" n'est pas clos.
Eclise met un warning pour l'ensemble des ressources non fermées. Y compris dans ton cas. En revanche, ne fermer que les ressources qu'on a soi-même ouverte.
Ce n'est pas toi qui a ouvert System.in, c'est "Java" (à moins qu'ils n'étaient modifié par un code quelque part, et qui devrait prendre en charge dans ce cas la fermeture), donc tu ne le fermes pas (là, le risque c'est qu'un autre bout de code qui s'en serve plante).
Code : Sélectionner tout - Visualiser dans une fenêtre à part Scanner scanner = new Scanner(System.in);
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
Partager