socket发送与接收16进制数据的郁闷问题

csbinchina 2010-01-07 03:33:44
客户端是java的,在java里定义的 char [] ,
发送的16进制串:
68 31 00 31 00 68 4B 11 11 01 00 02 02 60 00 00 04 00 D6 16

服务器是VC的,接收缓冲区是 char [],
接收到的字符串却变成了:
68 31 00 31 00 68 4B 11 11 01 00 02 02 60 00 00 04 00 3F 16

这是什么原因导致的,请高人指点一二。
...全文
327 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
healer_kx 2010-01-07
  • 打赏
  • 举报
回复
java的char是两个字节的,是和String联系很紧密的。。。能不能用byte[]传啊?


而且C++,的char是一个字节的,这怎么能接收对呢?差很多啊。
而且网络数据,在C++里面,也应该是
unsigned char[],也就是byte[]收啊。
qqbz 2010-01-07
  • 打赏
  • 举报
回复
楼主确定只有D6变成了3F,其他没有变化?

62,615

社区成员

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

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