drepou
Messages postés3Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention17 avril 2003
-
15 avril 2003 à 13:01
drepou
Messages postés3Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention17 avril 2003
-
17 avril 2003 à 17:28
bonjour je cherche a faire un programme qui lit depuis un inputstream des donnees pour les reutiliser ensuite je test avec le in standart mais je ne sort jamais de ma boucle je ne comprend pas pourquoi :
CoreBreaker
Messages postés540Date d'inscriptiondimanche 23 mars 2003StatutMembreDernière intervention 5 octobre 20071 16 avril 2003 à 20:12
Si tu fais:
java Toto <fichier.txt
System.in.read() retounera -1 à la lecture de la fin du fichier "fichier.txt".
Mais s'il s'agit de l'entrée standard (clavier) le flux n'a pas de fin, la méthode read() ne retournera jamais -1. Ce principe est vrai quelque soit le langage employé (en C par exemple).
Il faut que tu teste une séquence de fin de saisie:
...
while( System.in.read() = = 13 )
...
sort de la boucle si tu tape sur la touche entrée.
drepou
Messages postés3Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention17 avril 2003 17 avril 2003 à 17:28
ok donc si je comprend bien je peut toujour me brosser pour par exemple executer un telnet dans un process.exec
je n'arriverai jamais a utiliser la method read sur le getinputstream du process
car comme le stdout n'a jamais de fin je ne pourrai jamais sortir de mon read pour rediriger l'affichage du telnet dans un jtextarea par exemple sauf si je fais un read(1 millons) en priant pour que le telnet ne revoit pas plus d'un millons de caractere lors d'un commande