C做客户端向java服务器通过socket发送结构体数据,传送的是约定好的数字,但是服务端通过InputStream接收数据,然后放到byte数组中,然后再转为string类型的,现在出现乱码?这是怎么回事呢?直接将byte数组中的数据输出发现里面出现负数,约定的数据都是正的,这是怎么回事呢?是转码的问题还是接收的问题呢?请问如何解决呢?麻烦知道的帮助小弟一下。多谢
2条回答
- fmjsjx 2011-07-07 09:14关注
int型是32位的,也就是说要占用4个byte,你直接输出byte[]当然没用,要读取int型请使用DataInputStream包装,使用其readInt方法读取。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报