Qual è il modo migliore per inviare un int tramite un socket in Java? In questo momento sto guardandoInvio int tramite socket in Java
sockout.write((byte)(length >> 24));
sockout.write((byte)((length << 8) >> 24));
sockout.write((byte)((length << 16) >> 24));
sockout.write((byte)((length << 24) >> 24));
e poi cercando di ricostruire l'int dal byte dall'altra parte, ma non sembra funzionare. Qualche idea?
Grazie.
In generale, anche la tua strada dovrebbe funzionare, ma la risposta di Adam è migliore IMO. Tuttavia, il modo normale per farlo è ((lunghezza >> i) e (byte) 0xff) dove i è uno di (0, 8, 16, 24) che ti protegge dai problemi nel caso in cui il valore originale dell'intero sia negativo. – abyx