使用java编写一个程序,使得两台PC之间能交换信息,注意,客户端发送信息给服务端后服务端需要回复,客户端需要接收到回复信息
时间: 2024-03-09 18:48:15 浏览: 59
用java写的两个机器之间的聊天程序
好的,我可以为您提供一个简单的Java程序,实现客户端和服务端之间的信息交互。以下是程序的基本思路:
1. 客户端向服务端发送消息
2. 服务端接收到消息后,回复相同的消息
3. 客户端接收到服务端的回复消息
下面是程序的代码实现:
客户端代码:
```
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("localhost", 9999);
// 获取输入输出流
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream());
// 发送消息
out.println("Hello Server");
out.flush();
// 接收回复消息
String reply = in.readLine();
System.out.println("Server: " + reply);
// 关闭socket和流
out.close();
in.close();
socket.close();
}
}
```
服务端代码:
```
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(9999);
System.out.println("Server started...");
Socket socket = serverSocket.accept();
// 获取输入输出流
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream());
// 接收消息
String message = in.readLine();
System.out.println("Client: " + message);
// 回复消息
out.println(message);
out.flush();
// 关闭socket和流
out.close();
in.close();
socket.close();
serverSocket.close();
}
}
```
您可以分别运行客户端和服务端程序,查看程序是否能够正常运行,并且实现信息交互。
阅读全文