Socket 简单案例
package sockettest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; public class Client { public static void main(String[] args) { try { Socket st = new Socket("127.0.0.1",8899); BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); PrintWriter pw = new PrintWriter(st.getOutputStream()); BufferedReader ReaderServer = new BufferedReader(new InputStreamReader(st.getInputStream())); while(true){ System.out.println("客户端请输入"); String inputString = reader.readLine(); if(inputString.equals("break")){ break; } inputString = inputString+"\n"; pw.print(inputString); pw.flush(); System.out.println("正在等待服务端的回应"); String isrs = ReaderServer.readLine(); System.out.println("回应信息为:"+isrs); } ReaderServer.close(); pw.close(); st.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
服务端代码:
package sockettest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { try { ServerSocket sst = new ServerSocket(8899); Socket st = sst.accept(); BufferedReader reader = new BufferedReader(new InputStreamReader(st.getInputStream())); PrintWriter pw = new PrintWriter(st.getOutputStream()); BufferedReader sin = new BufferedReader(new InputStreamReader(System.in)); while(true){ System.out.println("客户端的请求信息为:"+reader.readLine()); System.out.println("服务端请输入"); String input = sin.readLine(); if(input.equals("break")){ break; } input = input + "\n"; pw.print(input); pw.flush(); } sin.close(); pw.close(); reader.close(); st.close(); sst.close(); } catch (IOException e) { e.printStackTrace(); } } }
浙公网安备 33010602011771号