首页 > 编程语言 >直播网站源码,接收方收到的信息等于缓冲区长度

直播网站源码,接收方收到的信息等于缓冲区长度

时间:2023-04-10 14:11:45浏览次数:42  
标签:String packet 直播 缓冲区 new byte data 源码

直播网站源码,接收方收到的信息等于缓冲区长度

原因分析:

实际上是创建字符串时设置获取数据包的长度不正确,长度不应使用data.length

 


byte[] data = packet.getData();
String s = new String(data, 0, data.length);

解决方案:

改用packet.getLength() 即可解决

 


public void receivePackage() {
        while(true) {
            byte[] buf = new byte[1024];
            DatagramPacket packet = new DatagramPacket(buf, 0, buf.length);
            try {
                socket.receive(packet);
                byte[] data = packet.getData();
                String s = new String(data, 0, packet.getLength());
                Log.d(TAG, "receivePackage: " + s);
                if(s.equals("BYE")) break;
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        socket.close();
    }

 

 以上就是直播网站源码,接收方收到的信息等于缓冲区长度, 更多内容欢迎关注之后的文章

 

标签:String,packet,直播,缓冲区,new,byte,data,源码
From: https://www.cnblogs.com/yunbaomengnan/p/17302731.html

相关文章

  • Collection - LinkedList源码解析
    简介:LinkedList集合底层是一个双向链表结构,具有增删快,查询慢的特点,内部包含大量操作首尾元素的方法。适用于集合元素先入先出和先入后出的场景,在队列源码中被频繁使用。链表结构的节点新增、删除都非常简单,仅仅把前后节点的指向修改下就好了,所以LinkedList新增和删除速度很......
  • SpringSecurity源码之WebSecurity构建FilterChainProxy
    主要参考了https://mp.weixin.qq.com/s/D0weIKPto4lcuwl9DQpmvQ。SpringSecurity版本是2.7.9。将SpringBoot和SpringSecurity结合使用,SpringSecurity自动配置类是SecurityAutoConfiguration.class。 @AutoConfiguration@ConditionalOnClass({DefaultAuthenticationEventPubli......
  • 爬虫最后一天,爬取到的数据存到mysql中,爬虫和下载中间件、加代理、cookie、header、se
    爬到的数据存到mysql中classFirstscrapyMySqlPipeline:defopen_spider(self,spider):print('我开了')self.conn=pymysql.connect(user='root',password="",host='127.0.0.1......
  • 【Spring专题】「技术原理」从源码角度去深入分析关于Spring的异常处理ExceptionHandl
    ExceptionHandler的作用ExceptionHandler是Spring框架提供的一个注解,用于处理应用程序中的异常。当应用程序中发生异常时,ExceptionHandler将优先地拦截异常并处理它,然后将处理结果返回到前端。该注解可用于类级别和方法级别,以捕获不同级别的异常。在Spring中使用ExceptionHandler非......
  • kubegres 源码解析(四)
    CreateSpecCheckerSpecChecker结构体内有resourceStates字段,用于与Spec预设值进行比较.rc.SpecChecker=checker.CreateSpecChecker(rc.KubegresContext,rc.ResourcesStates)typeSpecCheckerstruct{kubegresContextctx.KubegresContextresourcesStat......
  • 【Spring专题】「技术原理」从源码角度去深入分析关于Spring的异常处理ExceptionHandl
    ExceptionHandler的作用ExceptionHandler是Spring框架提供的一个注解,用于处理应用程序中的异常。当应用程序中发生异常时,ExceptionHandler将优先地拦截异常并处理它,然后将处理结果返回到前端。该注解可用于类级别和方法级别,以捕获不同级别的异常。在Spring中使用ExceptionHandle......
  • spring security自动配置的源码简单分析
    本文基于的springboot版本是2.1.3.RELEASE,用springboot来自动配置springsecurity,一、综述在springboot中使用springsecurity只需要引入如下依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId&......
  • 源码共读 | 为 vite 项目自动添加 eslint 和 prettier
    前言Vite是一个用于现代JavaScript应用程序的快速、轻量级的构建工具,其设计目的是易于使用和适用于大型项目。Vite-pretty-lint是一个插件,可以在基于Vite的项目中安装和配置,以便在编写代码时能够自动对代码进行格式化和检查代码。这可以帮助开发人员在开发过程的早期捕获格......
  • Spring 源码解析 --AOP
        ......
  • 带源码的FPGA IP开源网站
    转载自:https://mp.weixin.qq.com/s/mNBhf3_-1zRFwUgaQmWYEQ1、fpga4funhttps://www.fpga4fun.com/你能在这个网站上找到什么?您可以找到信息页面,以及使用FPGA板构建的FPGA项目。注重点:项目。2、OPENCOREShttps://opencores.org/Opencores是一个开源的数字电路设计......