用java写一个Socket编程实现服务器端和客户端程序的编写
时间: 2024-02-20 21:02:35 浏览: 85
这是一个使用javasocket编程实现的项目,包含一个ftp客户端和一个ftp服务器端,主要是学习作用.zip
好的,下面是一个简单的Java示例,演示如何使用Socket编程实现服务器端和客户端程序的编写。
服务器端程序:
```java
import java.net.*;
import java.io.*;
public class Server {
public static void main(String[] args) throws IOException {
// 创建一个ServerSocket对象,指定监听的端口号
ServerSocket serverSocket = new ServerSocket(12345);
// 等待客户端连接
Socket clientSocket = serverSocket.accept();
System.out.println("Got connection from " + clientSocket.getInetAddress().getHostAddress());
// 向客户端发送数据
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
out.println("Thank you for connecting");
// 关闭客户端连接
out.close();
clientSocket.close();
serverSocket.close();
}
}
```
客户端程序:
```java
import java.net.*;
import java.io.*;
public class Client {
public static void main(String[] args) throws IOException {
// 创建一个Socket对象,指定服务器的主机名和端口号
Socket socket = new Socket("localhost", 12345);
// 接收服务器发送的数据
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
System.out.println(in.readLine());
// 关闭客户端连接
in.close();
socket.close();
}
}
```
在这个示例中,服务器端和客户端程序都使用了Java的`java.net`包。服务器创建了一个`ServerSocket`对象,并通过`accept()`方法等待客户端连接。在接受到客户端连接后,服务器向客户端发送了一条消息,并关闭了客户端连接。
客户端程序创建了一个`Socket`对象,然后通过`getInputStream()`方法接收服务器发送的一条消息后,关闭了连接。
这只是一个简单的示例,实际应用中,Socket编程可以用于实现各种各样的应用程序,例如聊天程序、文件传输程序等。
阅读全文