Java Socket编程

Java Socket编程


饶了一晚上 总算绕明白了 可能我开始理解就是个错误

废话不多说 开写

客户端

  • 1.建立套接字
    2.建立连接
    3.通信
    4.关闭IO流 *

服务器端

  • 1.建立套接字
    2.监听
    3.建立连接
    4.通信
    5.关闭IO流

服务器端代码

try {
	//建立套接字 端口号9988
   ServerSocket server=new ServerSocket(9988);
   	//监听  (如果有客户端访问 择创建socket对象 没有就一直为等待状态)
   Socket socket=server.accept();
   	//获取客户端的InputStreamReader对象
   InputStreamReader reader=new InputStreamReader(socket.getInputStream());
   BufferedReader br=new BufferedReader(reader);
   	//通过printWriter对象写给客户端
   PrintWriter pout=new PrintWriter(socket.getOutputStream());
   	//读取客户端传来的数据
   String readline=br.readLine();
   System.out.println("client:"+readline);
   
  
   if(readline.equals("Bye")){
    //发送给服务器
    pout.println("ByeBye");
    pout.flush();
   }
   else{
    pout.println("HelloWorld");
    pout.flush();
   }
   
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

客户端代码

try {
	//建立套接字
   Socket socket =new Socket("localhost",9988);
   	//服务器端返回回来的InputStreamReader对象
   InputStreamReader re=new InputStreamReader(socket.getInputStream());
   BufferedReader br=new BufferedReader(re);
   	//客户端写入的InputStreamReader对象
   InputStreamReader re1=new InputStreamReader(System.in);
   BufferedReader br1=new BufferedReader(re1);
   	//通过PrintWrite对象写入到socket中
   PrintWriter pout=new PrintWriter(socket.getOutputStream());
   pout.println(br1.readLine());
   pout.flush();
   	//读服务器端返回的InputStreamReader
   String line=br.readLine();
   System.out.println("server11:"+line);
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值