voila , j'ai trouve , donc il fallait bien faire la soluce de benou mais aussi changer de place le pr.waitFor () pour le mettre après le System.out...
quelle soluce de benou? :heink:
sanglier04
voila , j'ai trouve , donc il fallait bien faire la soluce de benou mais aussi changer de place le pr.waitFor () pour le mettre après le System.out...
sanglier04
nop c bon je l'avai deja rectifie ( je me disai aussi que ca n'avait po trop de sens ;) ) mais ca ne marche toujours pas l'orsque le programme "sort" beaucoup de message (c 'est a dire environ 10 - 15 lignes) :(
darklord22
benou a écrit a écrit :
while ((l = br.readLine) != null) ;)
rahhhh je suis pas dans mon editeur préféré, c'est pour ça que je fais des fautes ;)
benou
while ((l = br.readLine) != null) ;)
[edtdd]--Message édité par benou--[/edtdd]
sanglier04
nop ca marche tjs po :(
darklord22
bin voila tu as la réponse à ton prob ... Regarde du coté de ton stream.
au lieu de faire un truc while br.ready()
tu ferais mieux de faire un truc du genre
while ((l == br.readLine) != null)
ou un truc du genre...
sanglier04
justement lorsque je termine le programme (par Ctrl - C) les affichages du System.out.println apparaissent et je me rend compte qu'il a bien lu plusieurs lignes mais pas toutes
darklord22
c ton stream qui attend pour rien et qui bloque ... Ca m'en a tout l'air en tout cas. Suffit de mettre des traces pour voir ou ca bloque
sanglier04
nop je n'ai aucune procedure synchronize, je doit faire un synchronize sur koi ? (note : je n'ai po de thread dans mes classes)
rnt =Runtime.getRuntime ();
pr =rnt.exec (prog);
BufferedReader br = new BufferedReader (
new InputStreamReader (
pr.getErrorStream()));
pr.waitFor ();
while (br.ready ())
System.out.println (br.readLine());
qui me sert a lancer un programme "prog" avec comme argument "un_fichier" et qui recupère la sortie des erreure.
ceci fonctionne bien lorsque "prog" ne fait pas beaucoup de sortie mais kan il en fait le programme java semble bloqué, il vient d'ou le problème :??: