Java - problemas con socket binario, HELP

 
Vista:

problemas con socket binario, HELP

Publicado por oscar (15 intervenciones) el 08/07/2006 01:00:49
se tiene una conexion soket por el cual puede transmitirse datos binarios y texto. para ello se hizo esto en la parte del servidor:
writer = new DataOutputStream(objClientSocket.getOutputStream());
reader = new DataInputStream(objClientSocket.getInputStream());

Problema 1
String data = reader.readLine();
pero el metodo esta en desuso, se recomienda usar un StreamReader, pero se necesita enviar datos binarios, habria algun problema si se usa este metodo a pesar de la advertencia?

Problema 2
String strCadena;
...
writer.writeUTF( strCadena + "\n");
esto se usa para enviar una cadena al cliente, funciona, pero en el lado del cliente se recive como un string delphi, pero siempre con 2 carecteres extraños antes de la cadena real que se envia, y estos caracteres raros cambian continuamente, por que??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:problemas con socket binario, HELP

Publicado por chuidiang (950 intervenciones) el 10/07/2006 15:36:40
Hola:

writeUTF escribe la cadena en formato UTF. Eso quiere decir que envia primero dos bytes para indicar la longitud de la cadena que va detrás y luego la cadena. Esos dos bytes son los caracteres extraños que tu dices.

Si lo haces bien, en el otro lado deberías hacer readUTF() o el equivalente en el lenguaje que se encargue de recibir. Es decir, leer los dos bytes para ver la longitud de lo que va detrás y luego leer esos caracteres.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas con socket binario, HELP

Publicado por oscar (15 intervenciones) el 10/07/2006 18:21:18
ok, gracias, en delphi creo que no hay un equivalente a readUTF (es verdad es uno de los peores a mi criterio) pero debe poder simularse.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar