java socket 处理字节问题 16进制发过去 UDP 协议 二进制转换为相应的类型 如何

WaitForWlk 2010-10-13 12:30:43
现在根据需求 1个16进制数据包发过去 根据长度 分别为几个字段值, 类型有 short double int char 等等

服务端根据UDP 来接受的

packet = new DatagramPacket(new byte[1024], 1024); //数据包
udpSocket.receive(packet);
byte[] message = packet.getData(); 这样拿到应该是2进制吧 其他略去了。

这样拿到是个二进制 byte 数组 我的思路是 我在根据长度给他分别拆成几个对应字段属性的数组,

然后 把 byte数组转为 ByteBuffer ,再有它的 getDouble(), getInt() 等获取, 这样数据不对。。。


麻烦介绍下其他方法 或者指错错误好吗。

...全文
271 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧