Ich sende/empfange Daten zwischen Android und anderen Gerät über den USB.Puffer zu String
Der Code, den ich für Daten empfangen verwenden:
StringBuilder stringBuilder = new StringBuilder();
int i = 0;
int s = buffer[0];
for (; i < s; i++) {
stringBuilder.append(String.valueOf((char)buffer[i]));
}
byte[] b = String.valueOf(stringBuilder).getBytes();
ich alle Bytes erhalten gut, außer wenn das Byte größer ist als 127. Wie zu?
Ich versuche zu verwenden:
stringBuilder2.append(String.valueOf((int)buffer[i] & 0xFF));
und gut funktionieren, wenn ich String.valueOf (String) lesen, aber nicht, wenn ich schaffen byte []
'Daten sind eine Serie von Bytes: byte [1,2,8,56,87,256] '- Das ist keine Folge von Bytes. Es hat 256 drin. – khelwood
Srry, ich habe nie mit Bytes gespielt ..;) – Phyron
Einige Zeichen werden mit mehreren Bytes dargestellt, so dass Sie darauf achten müssen, nicht 1 Byte gleichzeitig zu konvertieren. –