Ciao a tutti,

utilizzo un buffered reader per leggerere dei dati da seriale notando un comportamento "strano" (almeno io non lo capisco )

Vorrei utilizzare il metodo ready per capire se posso leggere o meno il buffered reader, ma mi capita ( non è un comportamento fisso) che il ready mi restituisca un valore false ma se leggo una sua linea con il metodo readLine questa sia valorizzata.


codice:
        
InputStream in;
InputStreamReader isr ;
....

BufferedReader  br = new BufferedReader (isr);
             System.out.println (br.ready);    <<<-- FALSE  
             System.out.println (br.readLine());  <<<-- RIGA LETTA  

                        if (br.ready())
                        {
                                if ((stringa  = br.readLine()) != null)
                                {
                                  .......
                                 }
                          }
                          else {
                               System.out.println ( "Niente dati");
                               System.out.println (br.readLine()); <<<<----
                          }
ho frainteso qualcosa?