1.数据准备及代码

ByteBuf byteBuf = PooledByteBufAllocator.DEFAULT.directBuffer();//声明一个bytebuf 对象
byteBuf.writeByte(1);//第一位置存放数字1(占用1个字节)
byteBuf.writeShort(0);//第二位置存放数字 0(占用2个字节) ,这里是打算做长度
String temp = "我是谁";//需要获取的数据
byteBuf.writeBytes(temp.getBytes());//获取字节数组
byteBuf.setShort(1,byteBuf.readableBytes());//设置第二位置的长度,也就是整个byteBuf对象的长度
get(byteBuf);//get方法解析

方法:

public static void get(ByteBuf in){int inv = in.readerIndex();int first =in.getByte(inv);inv++;int length = in.getShort(inv);inv+=2;// 减3 是因为前面是获取到总长度,前面占用了byte + short = 1+2=3byte[] data = new byte[length - 3];//数据大小in.getBytes(inv, data);try {String str = new String(data, 0, data.length, "utf-8");System.out.println(str);} catch (UnsupportedEncodingException e) {e.printStackTrace();}
}

2.执行结果

ByteBuf 读取字节数组数据相关推荐

  1. 为什么读文件操作一次读取字节数组最大是8192

    为什么读文件操作一次读取字节数组最大值是8192 ? 最近做项目遇到将服务器上的文件下载到本地操作.其中用到了一个方法Files.copy 调试过程中查看源码发现一个很有意思的事 // buffer ...

  2. java中如何获取字节数组_如何从java中读取字节数组中的数据

    大家好 我将一个mp3文件转换为字节数组,我从字节数组中读取,但它显示行号15的空指针异常 我的代码: public class MainClass { static byte[] bytesarra ...

  3. 字节流读数据(一次读一个字节数组数据)

    一次读一个字节数组的方法 public int read(byte[] b):从输入流读取最多b.length个字节的数据 返回的是读入缓冲区的总字节数,也就是实际的读取字节个数 示例代码 publi ...

  4. android 输出字节数组,Android蓝牙通信字节数组的数据类型转换 求教!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 单片机和安卓手机进行蓝牙通信,发送电压数据到手机,恰好每次8位数据(1字节)传给上位机.采用以下代码获得16进制字符输出,以下是蓝牙通信接收并显示数据部分 ...

  5. 11Java的字节数组流及其使用

    IO字节数组流 字节数组流ByteArrayInputStream.ByteArrayOutputStream的区别: 源头换成电脑上的内存中的数据,字节数组,可以看成电脑上的内存,或者是网络上的内存 ...

  6. Java--字节流和字节数组流

    一.IO流 A:什么是IO流: IO流用于处理设备之间的数据传输 JAVA对于数据的操作都是通过流的操作 数据流操作都是在 IO包中 B:类型: 按照流操作分类: 输入流 输出流 按照流操作的数据类型 ...

  7. python操作字节数组

    创建字节数组 key = bytearray([0x13, 0x00, 0x00, 0x00, 0x08, 0x00]) key >>bytearray(b'\x13\x00\x00\x0 ...

  8. ASCII字节数组转换成字符串

    有一些通信中,需要字符串装换成ASCII字节数组数据,进行数据通信. 在数据解析的过程中,就需要将字节数组转换成字符串. byte[] data: String version; data的数据如下: ...

  9. java Hutool发送邮件附带附件 使用文件流、字节数组方式

    MailUtil.send();无法发送文件流, //这个方式只能传入本地File,无法传入网络资源 MailUtil.send(); 内置Mail类实现方式 public static void m ...

最新文章

  1. (如何从一个列表中随机抽样)np.random.choice(),random.sample()
  2. 山石网科发布重磅容器安全产品“山石云铠”,云安全版图再下一城
  3. java script创建对象_JavaScript七种非常经典的创建对象方式
  4. 别再纠结线程池大小 + 线程数量了,没有固定公式的!
  5. codeforces166E - Tetrahedron DP
  6. Ubuntu 18.04下Couldn't connect to Docker daemon at http+docker://localunixsocket解决办法
  7. Django之modelform
  8. 华为鸿蒙被卖了,8%!被卖掉的荣耀过的日子,与华为越来越不同了!
  9. typora激活方法及使用教程
  10. 求最小公倍数的几种方法
  11. AWVS批量扫描-妈妈再也不用担心我不会用awvs批量扫描了
  12. 关于Ubuntu的16.04对应版本的ros安装和turtlebot安装
  13. JVM系列(十三)——垃圾回收器
  14. 想和大家讲述一个普通人的生活:现在差劲不可怕,只要最后是好的就行
  15. 7.31 XMap
  16. 谈谈:高端网站定制开发的流程和步骤有哪些?
  17. C++入门——仿真小球自由落体运动和抛物线运动
  18. 在WebGL场景中管理多个卡牌对象的实验
  19. 下一代云计算模式:Docker正掀起个性化商业革命
  20. Word排版步骤的小思考

热门文章

  1. 全息投影是计算机领域吗,世界计算机大会丨科技走进课堂:5G+全息投影教学
  2. 社区电脑计算机培训即将结束,电脑培训感言(2页)-原创力文档
  3. HTML5系列代码:一个完整简单的页面
  4. macbook如何使用visual studio code进行c语言编程
  5. 由RGB到HSV的转换详解
  6. Java、JSP(二手车)交易管理系统毕业设计论文
  7. 信息学奥赛一本通(C++版) 刷题 记录
  8. 基于CSI数据实现Suspicious object detection
  9. 副连长是什么级别_部队连长是什么级别(连长职务及级别介绍)
  10. Redis set 类型 查询命令