Android-android pc socket通信问题
android和pc进行通信的情况,如果android发送的byte数据为负数的话,在pc端接收不到正确的数据。我发送了0x9b,接收到的却是-17。
我发送的时候是发送的byte的时候,使用的是java.io.OutputStream.write(byte[] buffer)函数,其中buffer数组的最后两位是rn;pc端接收的时候使用的是java.io.BufferedReader.readLine()得到一个字符串,然后使用getBytes方法来出来byte数组。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
学习。就像在C#中 是使用 write(byte[].start.index,end.dex) //用的是二进制
另一种方式则是 text方式
问题已经结果了,不能用BufferedReader,得用DataInputStream。否则0x9B就会解释成一个未知数字。
BufferedReader是读取字符流的。你的0x9B是个Control Sequence Introducer么?是不是被当做控制字符忽略掉了。