samedi 11 avril 2015

Serial Port Daten empfangen

Guten Abend,



ich programmiere in laufe eines Schulprojektes ein Warenwirtschaftssystem und verwende dabei auch einen RFID-Kartenleser, den ich über einen Serial-Port anschließe.



In einem Beispielprogramm werden die Daten mit der folgenden Methode empfangen:


Java Code:






  1. void serialPortDatenVerfuegbar() {



  2. try {



  3. byte[] data = new byte[150];



  4. int num;



  5. while(inputStream.available() > 0) {



  6. num = inputStream.read(data, 0, data.length);



  7. System .out.println("Empfange: "+ new String (data, 0, num));



  8. empfangen.append(new String (data, 0, num));



  9. }



  10. } catch (IOException e) {



  11. System .out.println("Fehler beim Lesen empfangener Daten");



  12. }



  13. }







In der Ausgabe in der Konsole werden lediglich nur Bruchstücke angezeigt, aber in der TextArea sind dann die vollständigen Codes zu sehen.



Nun möchte ich die Daten aber in einem Array speichern. Nun habe ich wieder das Problem, dass ich in dem Array auch nur Bruchstücke angezeigt bekomme. Hier einmal mein Code:


Java Code:






  1. public void serialPortDatenVerfuegbar(){



  2. empfang =new String [150];



  3. try {



  4. byte[] data = new byte[150];



  5. int num;



  6. int i=0;



  7. while(inputStream.available() > 0) {



  8. num = inputStream.read(data, 0, data.length);



  9. empfang[i]=new String (data, 0, num);



  10. System .out.println("Empfang: "+empfang[i]);



  11. i++;



  12. }



  13. } catch (IOException e) {



  14. System .out.println("Fehler beim Lesen empfangener Daten");



  15. }



  16. //rs=dh.searchRFID((String)cb_database.getSelectedItem(), empfang);



  17. //tbl_database.setModel(DbUtils.resultSetToTableModel(rs));



  18. }









Freundliche Grüße



Damien Jochim





Serial Port Daten empfangen

0 commentaires:

Enregistrer un commentaire