Java網路程式設計7.TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出
阿新 • • 發佈:2018-12-11
TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出
1、鍵盤錄入資料
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
2、TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出
(1)伺服器端
package cn.itcast_08; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class ServerDemo { public static void main(String[] args) throws IOException { // 建立伺服器Socket物件 ServerSocket ss = new ServerSocket(22222); // 監聽客戶端連線 Socket s = ss.accept(); // 包裝通道內容的流 BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream())); String line = null; while ((line = br.readLine()) != null) { System.out.println(line); } // br.close(); s.close(); // ss.close(); } }
(2)客戶端
package cn.itcast_08; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.Socket; /* * 客戶端鍵盤錄入,伺服器輸出到控制檯 */ public class ClientDemo { public static void main(String[] args) throws IOException { // 建立客戶端Socket物件 Socket s = new Socket("192.168.12.92", 22222); // 鍵盤錄入資料 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 把通道內的流給包裝一下 BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); String line = null; while ((line = br.readLine()) != null) { // 鍵盤錄入資料要自定義結束標記 if ("886".equals(line)) { break; } bw.write(line); bw.newLine(); bw.flush(); } // 釋放資源 // bw.close(); // br.close(); s.close(); } }