[英]Socket connection - Java adds bytes
我想通过套接字将字符串从我的Android设备发送到我的node.js服务器。 该连接已经起作用,但是每当我发送字符串时,服务器都会收到其他字符。
这是我将字符串“ hans”发送到node.js服务器时收到的:
Buffer ac ed
Buffer 00 05 77 04 68 61 6e 73
作为utf8字符串:
??
♣w♦hans
这是发送字符串的Java部分:
clientSocket = new Socket("xxx.xxx.xxx.xxx",9988);
ObjectOutputStream clientOut = new ObjectOutputStream(clientSocket.getOutputStream());
String sendString = "hans";
clientOut.write(sendString.getBytes());
clientOut.flush();
那么为什么会这样呢?
您正在使用ObjectOutputStream
,该对象用于发送序列化的对象,并且必须由另一端的ObjectInputStream
对其进行解码。 如果仅在另一端发送字节并读取字节,则应该只使用OutputStream
和InputStream
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.