Je dispose d'une balance connectée sur le port série de mon ordinateur.
Cette balance envoie le poids en continu sous le format "XXXX,XX\n".
Toutefois je n'ai besoin de lire ce poids que de façon ponctuelle (quand l'utilisateur le demande).
Pour l'instant je crée un flux (BufferedReader) pour lire une ligne et je détruit ce flux. Ce n'est pas très élégant et demande un peu de temps pour la création du flux. j'aimerai conserver ce flux mais je n'ai pas trouvé de méthode pour purger mon flux avant la lecture.
Si quelqu'un dispose d'une solution plus élégante.
Voici mon code de test (l'utilisateur fait "entrée" pour lire le poids et q pour quitter).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 BufferedReader bufRead; BufferedReader clavier=new BufferedReader(new InputStreamReader(System.in)); //lecture sur le flux entrée. try{ String lu=clavier.readLine(); while (!lu.equals("q")){ bufRead=new BufferedReader(new InputStreamReader(portSerie.getInputStream())); System.out.println(bufRead.readLine()); bufRead.close(); lu=clavier.readLine(); } }catch (IOException e){ e.printStackTrace(); }
Partager