gpt4 book ai didi

java - TCP Byte Array 不工作,但 Printer Writer 工作?

转载 作者:可可西里 更新时间:2023-11-01 02:51:46 26 4
gpt4 key购买 nike

目前我正在尝试使用 Java 在客户端与服务器之间进行通信,反之亦然。

到目前为止,我尝试了以下

尝试 1) 尝试以字节数组形式发送字符串。

客户端

OutputStream os = clientSock.getOutputStream();
byte[] sndMsg = new String("test").getBytes();
os.write(sndMsg);
os.flush();

服务器

InputStream is = serverChild.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));

String rcvRequest = br.readLine();
System.out.println(rcvRequest);

显然当它没有打印出测试时。

尝试 2)但是,当我将代码从客户端更改为

PrintWriter out = new PrintWriter(new OutputStreamWriter(clientSock.getOutputStream()));
out.println("test");
out.flush();

它有效。为什么会这样?我可以使用尝试 1 尝试发送字节数组并在服务器端将其作为字符串接收吗?谢谢。

最佳答案

BufferedReader.readLine 等待换行符,您应该在尝试 1 中将其添加到“测试”。尝试 2 中的 println 会自动添加它

关于java - TCP Byte Array 不工作,但 Printer Writer 工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29179601/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com