Java 的通信编程,编程题(或问答),用JAVA SOCKET编程,读服务器几个字符,再写入本地显示?

来源:互联网 发布:手机看盘软件 编辑:程序博客网 时间:2024/05/18 03:14
Java代码
  1. public class Server {   
  2.        
  3.     public static final int SERVER_PORT = 8888;   
  4.        
  5.     public void startServer() {   
  6.         try {   
  7.             ServerSocket ss = new ServerSocket(SERVER_PORT);   
  8.             //时刻监听客户端的连接   
  9.             while(true) {   
  10.                 //接手客户端的连接   
  11.                 Socket s = ss.accept();   
  12.                 //得到接收的这个Socket的输入流,并封装成一个BufferedReader()   
  13.                 BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));   
  14.                    
  15.                 //将从客户端接收到的数据在发送回客户端   
  16.                 PrintWriter pw = new PrintWriter(s.getOutputStream(), true);   
  17.                 pw.println(br.readLine());   
  18.                 //关闭相应的资源   
  19.                 br.close();   
  20.                 pw.close();   
  21.                 s.close();   
  22.                 System.err.println(br.readLine());   
  23.             }   
  24.         } catch (IOException e) {   
  25.         }   
  26.     }   
  27.        
  28.     public static void main(String[] args) {   
  29.         new Server().startServer();   
  30.     }   
  31. }  

 

Java代码
  1. public class Client {   
  2.     public void connServer() {   
  3.         try {   
  4.             //建立与服务器端的链接   
  5.             Socket s = new Socket("localhost",Server.SERVER_PORT);   
  6.             //监听键盘事件,等待用户输入字符串   
  7.             Scanner sc = new Scanner(System.in);   
  8.             //得到Socket的输入流封装成一个PrintWriter   
  9.             PrintWriter pw = new PrintWriter(s.getOutputStream(), true);   
  10.             //把用户输入的字符写出去   
  11.             pw.println(sc.nextLine());   
  12.                
  13.             //得到服务器端的输入流并封装成BufferedReader对象   
  14.             BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));   
  15.             System.out.println(br.readLine() + "服务器发送给我的数据");   
  16.                
  17.         } catch (UnknownHostException e) {   
  18.         } catch (IOException e) {   
  19.         }   
  20.     }   
  21.        
  22.     public static void main(String[] args) {   
  23.         new Client().connServer();   
  24.     }   
  25. }  

 

转自:http://longdechuanren.javaeye.com/blog/644346