javaprogger1987
Erfahrenes Mitglied
Hallo!
Ich hab folgendes Problem, ich würde gerne Integer als Byte-Arrays (4 Byte) haben,
um die über Sockets zu verschicken.. Mache das im Moment noch so, dass ich die
Integer als Strings übertrage, was ja nicht gerade die beste Lösung ist.
Nun hab ich schon was gefunden nämlich folgendes:
Byte Array -> Int
Int -> Byte Array
Das funktioniert auch schon so ganz gut.. Ist halt nur etwas aufwendig, vor allem weil
ich immer wieder neue Streams erzeugen muss.. Gibt es da nicht ne einfachere Methode?
Danke schonmal!
Tobias
Ich hab folgendes Problem, ich würde gerne Integer als Byte-Arrays (4 Byte) haben,
um die über Sockets zu verschicken.. Mache das im Moment noch so, dass ich die
Integer als Strings übertrage, was ja nicht gerade die beste Lösung ist.
Nun hab ich schon was gefunden nämlich folgendes:
Byte Array -> Int
Code:
arrayInputStream = new ByteArrayInputStream( buf ); //buf = byte[]
dataInputStream = new DataInputStream( arrayInputStream );
int id = dataInputStream.readInt();
Int -> Byte Array
Code:
private ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream( 0 );
private DataOutputStream dataOutputStream = new DataOutputStream( arrayOutputStream );
dataOutputStream.writeInt( userId );
dataOutputStream.flush();
byte[] id = arrayOutputStream.toByteArray();
Das funktioniert auch schon so ganz gut.. Ist halt nur etwas aufwendig, vor allem weil
ich immer wieder neue Streams erzeugen muss.. Gibt es da nicht ne einfachere Methode?
Danke schonmal!
Tobias
Zuletzt bearbeitet: