zoukankan      html  css  js  c++  java
  • Android进阶篇Socket通信

    Socket通信作为一种重要的数据交互方式,在Android开发过程也十分重要。

    //TCP Socket服务端

                ServerSocket serverSocket = null;
                
                try {
                    //4567 ServerSocket端口号
                    serverSocket = new ServerSocket(4567);
                    //服务端接受客户端的Socket请求
                    Socket socket = serverSocket.accept();
                    //获取输入流
                    InputStream inputStream = socket.getInputStream();
                    byte buffer[] = new byte[4*1024];
                    int temp = 0;
                    //将InputStream数据读入到Buffer中
                    while((temp = inputStream.read(buffer)) != -1){
                        
                    }
                } catch (Exception e) {
                    // TODO: handle exception
                    e.printStackTrace();
                }

    客户端:

                try {
                    Socket socket = new Socket("192.168.0.104", 4567);
                    InputStream inputStream = new FileInputStream("f://file/word.txt");
                    OutputStream outputStream = socket.getOutputStream();
                    byte buffer[] = new byte[4*1024];
                    int temp = 0;
                    while((temp = inputStream.read(buffer)) != -1){
                        outputStream.write(buffer, 0, temp);
                    }
                } catch (UnknownHostException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

    UDP Socket服务端:

                try {
                    DatagramSocket datagramSocket = new DatagramSocket(4567);
                    byte data[] = new byte[4*1024];
                    DatagramPacket datagramPacket = new DatagramPacket(data, data.length);
                    datagramSocket.receive(datagramPacket);
                } catch (Exception e) {
                    // TODO: handle exception
                }

    客户端:

                try {
                    DatagramSocket socket = new DatagramSocket(4567);
                    InetAddress inetAddress = InetAddress.getByName("192.168.0.104");
                    String helloWorld = "helloworld";
                    byte[]  data = helloWorld.getBytes();
                    DatagramPacket datagramPacket = new DatagramPacket(data, data.length, inetAddress,4567);
                    socket.send(datagramPacket);
                 } catch (Exception e) {
                    // TODO: handle exception
                }
  • 相关阅读:
    数据结构相关知识
    设计模式
    常用排序算法
    算法之---堆的简单介绍
    树和二叉树简介
    列表查找以及二分查找
    算法基础
    Python之函数(自定义函数,内置函数,装饰器,迭代器,生成器)
    Python学习【第2篇】:Python数据结构
    统计一篇英文文章内每个单词出现频率,并返回出现频率最高的前10个单词及其出现次数
  • 原文地址:https://www.cnblogs.com/gongcb/p/2506839.html
Copyright © 2011-2022 走看看