4

我想通过套接字将字符串从我的 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();

那么为什么会这样呢?

4

1 回答 1

6

您正在使用ObjectOutputStream用于发送序列化对象的 an,并且必须由ObjectInputStream另一端的 an 解码。如果您只是在另一端发送字节并读取字节,那么您应该只使用 anOutputStream和 an InputStream

于 2013-04-13T10:06:18.833 回答