Originariamente inviato da Salinas
Come faccio ad applicare la tua ultima soluzione in questo caso?
Qui non utilizza buffer.
Perché non dovresti? L'ho detto: il BufferedInputStream basta metterlo in un DataInputStream!

Detto con un breve stralcio di codice:

codice:
InputStream is = cliente.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);

DataInputStream dis = new DataInputStream(bis);

int size = dis.read();

byte[] packet = new byte[size];

dis.readFully(packet);
E nota la lettura di 1 singolo byte con read() che ritorna un int con valore 0-255 ... molto più comodo!!

Ed è tutto lì ...