共計 1073 個字符,預計需要花費 3 分鐘才能閱讀完成。
在 Java 中獲取端口數據可以通過使用 java.net.Socket 類來實現。下面是一個簡單的示例代碼,演示了如何獲取指定主機和端口的數據:
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class PortDataExample {public static void main(String[] args) {String host = "example.com"; // 目標主機
int port = 80; // 目標端口
try {// 創建 socket 對象并連接到指定主機和端口
Socket socket = new Socket(host, port);
// 獲取 socket 的輸入流和輸出流
InputStream inputStream = socket.getInputStream();
OutputStream outputStream = socket.getOutputStream();
// 發送請求數據
String request = "GET / HTTP/1.1\r\nHost: " + host + "\r\n\r\n";
outputStream.write(request.getBytes());
outputStream.flush();
// 讀取響應數據
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {String response = new String(buffer, 0, bytesRead);
System.out.println(response);
}
// 關閉 socket 和流
socket.close();
inputStream.close();
outputStream.close();} catch (IOException e) {e.printStackTrace();
}
}
}
在上面的示例中,我們首先創建了一個 Socket 對象,并指定了目標主機和端口。然后,我們通過 Socket 對象的 getInputStream() 和getOutputStream()方法獲取輸入流和輸出流。通過輸出流,我們可以發送請求數據,通過輸入流,我們可以讀取響應數據。最后,我們關閉了 socket 和流,釋放資源。
請注意,在實際使用中,你可能需要根據具體的情況處理異常、驗證和解析響應數據等。
丸趣 TV 網 – 提供最優質的資源集合!
正文完
發表至: Java
2023-12-09