服务端:
1 package com.pkg1; 2 3 import java.io.*; 4 import java.net.*; 5 6 public class NetServer2 { 7 static final int PORT = 8888; 8 9 public static void main(String[]args){ 10 try { 11 //create server socket 12 ServerSocket svrSocket = new ServerSocket(PORT); 13 14 //listen client 15 Socket socket = svrSocket.accept(); 16 17 //prepare client socket input stream reader 18 InputStreamReader reader = new InputStreamReader(socket.getInputStream()); 19 BufferedReader bufReader = new BufferedReader(reader); 20 21 //prepare server PrintWriter 22 PrintWriter writer = new PrintWriter(socket.getOutputStream(), true); 23 24 //prepare console input stream reader 25 InputStreamReader conReader = new InputStreamReader(System.in); 26 BufferedReader bufConReader = new BufferedReader(conReader); 27 28 while(true){ 29 //read client information 30 System.out.println("wait for client data..."); 31 System.out.println("Server, receive : " + bufReader.readLine()); 32 33 //send information to client 34 System.out.println("Please input data and send it to client..."); 35 writer.println(bufConReader.readLine()); 36 } 37 38 } catch (IOException e) { 39 e.printStackTrace(); 40 } 41 } 42 }
客户端:
1 package com.pkg1; 2 3 import java.io.*; 4 import java.net.*; 5 6 public class NetClient2 { 7 static final String IP = "127.0.0.1"; 8 static final int PORT = 8888; 9 10 public static void main(String[] args) { 11 12 try { 13 //create socket connection 14 Socket socket = new Socket(IP, PORT); 15 16 //prepare PrintWriter to send data to server 17 PrintWriter writer = new PrintWriter(socket.getOutputStream(), true); 18 19 //prepare console input stream reader 20 InputStreamReader conReader = new InputStreamReader(System.in); 21 BufferedReader bufConReader = new BufferedReader(conReader); 22 23 //prepare input stream reader to get data from server 24 InputStreamReader reader = new InputStreamReader(socket.getInputStream()); 25 BufferedReader bufReader = new BufferedReader(reader); 26 27 while(true){ 28 //send data to server 29 System.out.println("Please input data and send it to server..."); 30 writer.println(bufConReader.readLine()); 31 32 //receive data from server 33 System.out.println("wait for server data..."); 34 System.out.println("Client, receive : " + bufReader.readLine()); 35 } 36 37 } catch (Exception e) { 38 e.printStackTrace(); 39 } 40 } 41 }
原文:http://www.cnblogs.com/guanhao/p/4928773.html