我正在从套接字客户端写入字节数组,如下所示:
byte[] arr = { 49, 49, 49, 49, 49};
InetAddress address = InetAddress.getByName(host);
connection = new Socket(address, port);
out = new ObjectOutputStream(connection.getOutputStream());
out.flush();
在接收端,在服务器上我有:
byte[] msgType = new byte[5];
in = new BufferedInputStream(connection.getInputStream());
int bytesRead = in.read(msgType, 0, 5);
System.out.println("msg rcvd: " + msgType.toString());
在输出中我得到奇怪的字符串:
server: waiting for connection
server: connection received from localhost
server: Connection Successful
bytes read: 5
msg rcvd: ��w
如何确保我获得与从客户端发送的字节相同的字节?
最佳答案
我不确定要打印的具体内容,但我可以告诉您 msgType.toString()
不会打印字节数组的内容。
Here是我找到的一个方法的链接,该方法将以更有意义的方式打印出字节数组。
关于java - 如何确保我的服务器读取客户端写入的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5602091/