gpt4 book ai didi

java - 如何通过Java套接字正确设置服务器部分?

转载 作者:行者123 更新时间:2023-11-30 07:32:05 25 4
gpt4 key购买 nike

我已经编写了服务器和客户端部分,请参阅代码:

//this I run on my firt PC
public class TCPServer {

public static void main(String[] args) throws Exception{

TCPServer server = new TCPServer();
server.run();
}

public void run() throws Exception{
ServerSocket socket = new ServerSocket(6789);
Socket SOCK = socket.accept();
BufferedReader BR = new BufferedReader(new InputStreamReader(SOCK.getInputStream()));

String msg = BR.readLine();
System.out.println(msg);

if(msg != null){
PrintStream PS = new PrintStream(SOCK.getOutputStream());
PS.print("MESSAGE RECEIVED");
}
}
}


//This I run on my notebook
public class TCPClient {

public static void main(String args[]) throws Exception{

TCPClient client = new TCPClient();
client.run();
}

public void run() throws Exception{
Socket clientSocket = new Socket("192.168.88.77",6789);
PrintStream PS = new PrintStream(clientSocket.getOutputStream());
PS.print("Hello from GLADIS VLADLEN");

BufferedReader BR = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

String msg = BR.readLine();
System.out.println(msg);

}
}

运行此应用程序后,没有任何反应。只有在我停止客户端应用程序消息后,服务器部分才会收到消息。为什么会出现这种情况?我尝试关闭防火墙,但这对我没有帮助。

最佳答案

服务器和客户端都使用 BufferedReader#readLine() 读取一行。但是,PrintStream 正在发送不带行终止符的字符。

尝试调用 println 而不是 print

关于java - 如何通过Java套接字正确设置服务器部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35962442/

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