在Java中,你可以使用ServerSocket
和Socket
類來監聽端口和接收數據。
首先,你需要創建一個ServerSocket
對象,并指定要監聽的端口號。然后,你可以使用accept()
方法來等待客戶端的連接請求,并返回一個Socket
對象來與客戶端進行通信。
一旦有客戶端連接成功,你可以使用Socket
對象的輸入流來接收數據。例如,你可以使用InputStreamReader
和BufferedReader
類來讀取數據。
下面是一個示例代碼,演示了如何監聽端口并接收數據:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
// 創建ServerSocket對象并指定端口號
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("等待客戶端連接...");
// 等待客戶端連接
Socket socket = serverSocket.accept();
System.out.println("客戶端連接成功!");
// 創建輸入流
InputStreamReader inputStreamReader = new InputStreamReader(socket.getInputStream());
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
// 讀取數據
String data = bufferedReader.readLine();
System.out.println("接收到的數據:" + data);
// 關閉連接
bufferedReader.close();
inputStreamReader.close();
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
注意:這只是一個簡單的示例代碼,演示了如何監聽端口接收數據。在實際應用中,你可能需要處理更多的異常情況,以及在多個客戶端連接時進行并發處理。