Bonjour à tous ,
voilà je communique avec une carte electronique branchée au réseau par socket , j'arrive bien à envoyer et recevoir les données mais lorsque je lis sur le bufferedreader , ça me fait une boucle infini .
Je faisIl me recupere bien les données envoyée mais continue et bloque une fois qu'il n'y à plus de données à recevoir.
Code : Sélectionner tout - Visualiser dans une fenêtre à part while((line = bufferedReader.readline()) != null)
J'imagine qu'il faut fermer le bufferedReader lorsqu'on arrive à la derniere ligne à recevoir , mais je ne sais pas trop comment ...
La derniere ligne reçu est vide : "" , mais il y a d'autre ligne vide parmis les lignes de données reçu donc je ne peut pas fermer le bufferedReader lorsqu'il y a une ligne vide...
J'ai vérfier et j'ai remarqué que cependant les données envoyée , en hexa, la fin est caractérisée par "3E 0A 0D 5D" mais je ne sais pas si ça peut être utile ...
Edit: biensur dès que je met le message sur le forum je trouve la solution alors que j'y etait depuis deux heures ...
J'ai finalement résolu le problème en lisant dans le bufferedreader caractere par caractere , et grace à l'hexa donné si dessus j'ai fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part while((caractere = bufferedreader.read()) != ']')
Partager