首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java Socket 程式設計(二):TCP 客戶端 Socket 與資料流操作

     編輯:Java 相關知識

客戶端連線建立

TCP 客戶端使用 Socket 類別主動發起連線,需指定主機名稱與埠號:

Socket clientSocket = new Socket("example.com", 80);

常見知名埠號:HTTP(80)、HTTPS(443)、FTP(21)、SSH(23)、SMTP(25)、POP3(110)。

資料流讀寫操作

連線成功後,透過 getInputStream()、getOutputStream() 取得資料流,建議包裝為 DataInputStream/DataOutputStream 或 BufferedReader/PrintWriter 便於文字處理:

DataOutputStream out = new DataOutputStream(clientSocket.getOutputStream());
DataInputStream in = new DataInputStream(clientSocket.getInputStream());

// 發送 HTTP GET 請求
out.writeBytes("GET / HTTP/1.0\r\n\r\n");

// 讀取回應
String line;
while ((line = in.readLine()) != null) {
    System.out.println(line);
}

資源正確關閉順序

  1. 關閉輸出流 out.close()
  2. 關閉輸入流 in.close()
  3. 關閉 Socket clientSocket.close()

務必在 finally 區塊關閉資源,避免洩漏。Java 7+ 可使用 try-with-resources 自動管理。

標準客戶端五步驟

  1. 建立 Socket 連線
  2. 取得讀寫資料流
  3. 執行協定邏輯(發送請求、接收回應)
  4. 關閉資料流
  5. 關閉 Socket
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved