热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java中的iobuffer

在做crc校验的过程中遇到了iobuffer转换成string的问题,自己找了点资料写了个简单的方法。 Java代码  package minaUDP;    import jav

在做crc校验的过程中遇到了iobuffer转换成string的问题,自己找了点资料写了个简单的方法。

Java代码收藏代码
  1. package minaUDP;
  2. import java.nio.ByteOrder;
  3. import java.nio.charset.CharacterCodingException;
  4. import org.apache.mina.core.buffer.IoBuffer;
  5. /**
  6.  * iobuffer 转换成String
  7.  * @Description:TODO
  8.  * @Date:2012-3-15
  9.  * @author
  10.  */
  11. publicclass IoBufferTOString {
  12. publicstatic String ioBufferToString(IoBuffer iobuffer){
  13.         System.out.println("message = " + iobuffer + iobuffer.limit());
  14.         iobuffer.flip();//调换buffer当前位置,并将当前位置设置成0
  15. byte[] b =newbyte[iobuffer.limit()];
  16.         iobuffer.get(b);
  17. //此处用stringbuffer是因为 String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。
  18.         StringBuffer stringBuffer =new StringBuffer();
  19. for(int i =0; i < b.length; i++){
  20.             System.out.println("====" + b[i]);
  21.             stringBuffer.append((Byte) b[i]);//可以根据需要自己改变类型
  22.             System.out.println(b[i] +"---------" +i);
  23.         }
  24. return stringBuffer.toString();
  25.     }
  26. /**
  27.      * @param args
  28.      * @param:@param args
  29.      * @return:void
  30.      * @author
  31.      * @throws CharacterCodingException
  32.      * @Date:2012-3-15
  33.      */
  34. publicstaticvoid main(String[] args)throws CharacterCodingException{
  35.         IoBuffer iobuffer = IoBuffer.allocate(8);
  36.         iobuffer.order(ByteOrder.LITTLE_ENDIAN);
  37.         iobuffer.putChar('z');
  38.         iobuffer.putInt(123);
  39.         String str = ioBufferToString(iobuffer);
  40.         System.out.println(str);
  41.     }
  42. }
  43. /**
  44.  * @author create on 2012-3-15
  45.  */

推荐阅读
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 问题场景用Java进行web开发过程当中,当遇到很多很多个字段的实体时,最苦恼的莫过于编辑字段的查看和修改界面,发现2个页面存在很多重复信息,能不能写一遍?有没有轮子用都不如自己造。解决方式笔者根据自 ... [详细]
  • 1、编写一个Java程序在屏幕上输出“你好!”。programmenameHelloworld.javapublicclassHelloworld{publicst ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • Java多线程售票案例分析
    本文通过一个售票系统的实例,深入探讨了Java中的多线程技术及其在资源共享和并发控制中的应用。售票过程涉及查询、收款、找零和出票等多个步骤,其中对总票数的管理尤为关键。 ... [详细]
  • Go语言实现文件读取与终端输出
    本文介绍如何使用Go语言编写程序,通过命令行参数指定文件路径,读取文件内容并将其输出到控制台。代码示例中包含了错误处理和资源管理的最佳实践。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • 本文详细介绍了在Luat OS中如何实现C与Lua的混合编程,包括在C环境中运行Lua脚本、封装可被Lua调用的C语言库,以及C与Lua之间的数据交互方法。 ... [详细]
  • 本文探讨了异步编程的发展历程,从最初的AJAX异步回调到现代的Promise、Generator+Co以及Async/Await等技术。文章详细分析了Promise的工作原理及其源码实现,帮助开发者更好地理解和使用这一重要工具。 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • 本文探讨了Python类型注解使用率低下的原因,主要归结于历史背景和投资回报率(ROI)的考量。文章不仅分析了类型注解的实际效用,还回顾了Python类型注解的发展历程。 ... [详细]
  • td{border:1pxsolid#808080;}参考:和FMX相关的类(表)TFmxObjectIFreeNotification ... [详细]
  • 如何将955万数据表的17秒SQL查询优化至300毫秒
    本文详细介绍了通过优化SQL查询策略,成功将一张包含955万条记录的财务流水表的查询时间从17秒缩短至300毫秒的方法。文章不仅提供了具体的SQL优化技巧,还深入探讨了背后的数据库原理。 ... [详细]
author-avatar
mobiledu2502879827
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有