Buennas:
Estoy un poco pegado en java. Estoy haciendo una aplicación para comunicarme mediante sockets y necesito enviar la una secuencia de bytes en hexadecimal (en bruto). Ya tengo medio hecho el programa. Buscando y mirando por ahí encontré el siguiente código, que es el que utilizo,
Código:
byte[] prueba = {0x5C, 0x02, 0x00, 0x00}
PrintWriter salidaTCP = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
ByteArrayOutputStream prueba_raw = new ByteArrayOutputStream();
prueba_raw.write(prueba,0,prueba.length);
salidaTCP.print(prueba_raw);
Hasta aquí todo bien, consigo lo que quiero, más o menos. El problema viene cuando en byte[] pongo algún carácter mayor de 127, (0xA0, 0x80...), no puedo porque los bytes en Java son con signo, el eclipse me da error como que no puedo convertir el tipo.
Necesito enviar los bytes sin signo, es decir poder enviar 0xA0, 0x80, 0x97... y con shorts no puedo porque la función ByteArrayOutputStream solo me permite byte[]. Alguna idea o consejo?
Gracias.
Saludos.