hallo,
ich habe folgendes programm.
ein c programm schickt Daten mit datentyp short zu einem java programm über socket.
aus dem c programm:
send(ClientSocket,(const char \*) &s\_buffer\_tmp[anzahl],(laenge-anzahl),0);
s_buffer_tmp ist von type unsigned short.
zum lesen der daten aus ja heraus verwende ich inputstream.read(byte[])
auf der java seite kommen die daten als byte strom an. jede zwei benachbarte bytes sind vertauscht. ich muss immer einen swap machen und dann erst nach int konvertieren und das kostet zeit.
das problem liegt nicht an der konvertierungsfunktion
habe zwei varianten getestet.
public static int byte2tos(byte b0, byte b1) {
short temp = 0 ;
temp = (short)((b0&(short)0x00ff)
weiss jemand was die ursache können, dass die reihenfolge von jede zwei benachbarten bytes falsch ist ?
Gruss
Youssef
ist vielleicht auch nicht so ganz standardkonform aber wenns hilft *G*