Scanner(InputStream in) Probleme unter Windows

maltor

Mitglied
Ich stelle eine Verbindung zur seriellen Schnittstelle her, von der Klasse die dieses realisiert erhalte ich den InputStream.

Unter Linux funktioniert das mit dem Scanner, aber unter Windows leider nicht. Habe auch schon verschiede Funktion des Scanner ausprobiert (hasNextLine,getNextLine) funktioniert aber leider auch nicht. Ich kann unter Windows so



Code:
while ( ( len = this.in.read(buffer)) > -1 )
  {
   
      str = new String( buffer,0,len);
  }

von den ImputStram lesen.



Hier der Code des Scanners:



Code:
public  class Reader implements Runnable {
   
              private InputStream in;
   
          public Reader ( InputStream in )
          {
              this.in = in;
          }
   
   
   
          public void run ()
          {
   
              Scanner sc = new Scanner(in);
              sc.useDelimiter("\n");
              boolean a = true;
              String stin;
              while (sc.hasNext())
              {
                    stin = new String(sc.next());
   
                    stin = stin.concat("\n");
   
                    a = ring_buffer.addRingBuffer(stin);
                     if(a == false)
                   {
   
                        try  {
                           Thread.sleep(100);

System.out.println("-----------RingBuffer ist voll, in ConnectToIo Reader");
                                     } catch  (InterruptedException e) {
                                           // TODO Auto-generated catch block
                                           e.printStackTrace();
                                     }
   
                   }
              }
     }
  }
 
Zurück