共計(jì) 1065 個(gè)字符,預(yù)計(jì)需要花費(fèi) 3 分鐘才能閱讀完成。
在 Java 中,你可以使用 ServerSocket
和Socket
類來監(jiān)聽端口和接收數(shù)據(jù)。
首先,你需要?jiǎng)?chuàng)建一個(gè) ServerSocket
對(duì)象,并指定要監(jiān)聽的端口號(hào)。然后,你可以使用 accept()
方法來等待客戶端的連接請(qǐng)求,并返回一個(gè) Socket
對(duì)象來與客戶端進(jìn)行通信。
一旦有客戶端連接成功,你可以使用 Socket
對(duì)象的輸入流來接收數(shù)據(jù)。例如,你可以使用 InputStreamReader
和BufferedReader
類來讀取數(shù)據(jù)。
下面是一個(gè)示例代碼,演示了如何監(jiān)聽端口并接收數(shù)據(jù):
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 {
// 創(chuàng)建 ServerSocket 對(duì)象并指定端口號(hào)
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("等待客戶端連接...");
// 等待客戶端連接
Socket socket = serverSocket.accept();
System.out.println("客戶端連接成功!");
// 創(chuàng)建輸入流
InputStreamReader inputStreamReader = new InputStreamReader(socket.getInputStream());
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
// 讀取數(shù)據(jù)
String data = bufferedReader.readLine();
System.out.println("接收到的數(shù)據(jù):" + data);
// 關(guān)閉連接
bufferedReader.close();
inputStreamReader.close();
socket.close();
serverSocket.close();} catch (IOException e) {e.printStackTrace();
}
}
}
注意:這只是一個(gè)簡(jiǎn)單的示例代碼,演示了如何監(jiān)聽端口接收數(shù)據(jù)。在實(shí)際應(yīng)用中,你可能需要處理更多的異常情況,以及在多個(gè)客戶端連接時(shí)進(jìn)行并發(fā)處理。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!
正文完
發(fā)表至: Java
2023-12-16