java -Socket实现简单通信

mac2022-06-30  27

大致思路:

服务端

创建服务端, 调用ServerSocket 初始化端口号 - 创建服务器accpet() 等待连接,做出对应读写操作

客户端

1.连接到服务端的端口号 2.做出对应读写操作

服务端

import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; public class server { /** * @param args */ public static void main(String[] args) { try { ServerSocket server = new ServerSocket(8787); if(server!=null){ System.out.println("创建服务端成功"); } Socket serverconnect=server.accept(); System.out.println("有客户接入"); //获取输入通道,用来读取数据 InputStream server_in =serverconnect.getInputStream(); byte[] mes=new byte[128]; int len; len=server_in.read(mes); System.out.println(new String(mes,0,len)); System.out.println("数据接受成功"); server.close(); } catch (IOException e) { // TODO Auto-generated catch block System.out.println("创建服务器失败"); e.printStackTrace(); } } }

客户端

import java.io.IOException; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; public class client { /** * @param args */ public static void main(String[] args) { Scanner sc= new Scanner(System.in); try { Socket client = new Socket("192.168.1.29", 8787); OutputStream out = client.getOutputStream(); System.out.println("请输入要传输的内容"); out.write(sc.next().getBytes()); System.out.println("数据发送完毕"); sc.close(); client.close(); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
最新回复(0)