Ver Mensaje Individual
  #7 (permalink)  
Antiguo 26/08/2008, 19:49
razer
 
Fecha de Ingreso: marzo-2008
Mensajes: 237
Antigüedad: 16 años, 2 meses
Puntos: 6
Respuesta: length en un solo byte

Siempre el length va a ser de 19, asi que no va a haber problema creo.
Ya pude convertir el Int del length a byte[] (me baje una funcion), ahora lo que resta es hacer eso con el resto....

yo no sabia que el getBytes() podria llegar a tener errores, lo que intente hacer es esto:

Código:
ByteArrayOutputStream Pepe234 = new ByteArrayOutputStream();
String pstr = "BitTorrent protocol";
String reserved = "00000000";
String info_hash = "D027FE403E861F4F65F6"; 
String peer_id = "-AZ2837465019234856-";
		
Pepe234.write(intToByteArray(pstr.length()));
Pepe234.write(reserved.getBytes());
Pepe234.write(info_hash.getBytes());
Pepe234.write(peer_id.getBytes());
   
salida1.write(Pepe234.toByteArray());
Estoy intentando hacer lo que me decis, hacerme un buffer en memoria y guardar todo (NO, en realidad NO ESTOY haciendo un buffer, para eso hay que usar BufferedByteArrayOutputStream o algo asi no? estoy en bolainas xD) El tema es que me sigue devolviendo -1, pero hay 2 cosas:

No se como obtener los bytes de un String si no es con getBytes (quiza el error venga por ahi porque me dijiste que puede llegar a hacer conversiones mal).
Tampoco se si esas declaraciones de strings estan bien, quizas se deberia hacer de byte de una, verdaderamente ya estoy mareado.....
Y la otra bueno, es segun la especificacion nose si estoy cumpliendo, el pstrlen single byte nose a donde anda pero bueno :P

Es facil pero me estoy enredando solito :(

Última edición por razer; 26/08/2008 a las 19:56