当我在字符串上调用该getBytes()
方法时,我得到不一致的结果,第一次执行语句时它只返回字符串的前 3 个字符,如果我再次调用该语句,它会返回完整的字符串,但它也只随机返回前三个字符每隔一段时间。我的服务器类的代码片段如下:
String reply = ("Current list of users includes: " + users);
buf = reply.getBytes();
packet = new DatagramPacket(buf, buf.length, address, port);
socket.send(packet);
在客户端接收端,我有以下内容;
socket.receive(packet);
String response = new String(packet.getData());
System.out.println("ChatClient: Response from Server: " + response);
第一次调用时,打印的所有内容都是“Cur”,然后第二次调用时,将打印完整的字符串以及存储在“用户”中的值。
无论如何,是否可以确保它在第一次以一致的方式正确运行?