Max_Wang7519 2017-08-30 06:23 采纳率: 0%
浏览 2269

蓝牙串口通信时,接收串口数据被截断。

比如返回值是123456 但总是分段发给我 1 , 22, 456, 不确定分几段 发来。求解决啊 我被搞死了
while(true) {
try {
//如果读取的字节数大于0,表示有数据存在
bytes = inStream.read(buffer);
if(bytes > 0) {
//定义新的字符数据,长度为读取的数据的长度
byte[] byte_data = new byte[bytes];
//通过循环将buffer里面的数据复制到byte_data数组中
for(int i=0; i<bytes; i++) {
byte_data[i] = buffer[i];
}
//将byte_data数组转换成字符串
String sda = new String(byte_data);
System.out.println("收到的数据sda为:"+sda);
}
}catch(IOException a) {
try {
inStream.close();
} catch(IOException ae) {
ae.printStackTrace();
}

  • 写回答

3条回答 默认 最新

  • 白萝卜。 2017-08-30 10:14
    关注

    蓝牙串口传输数据本身就是这样,你可以分批把数据接受来后,然后重新拼出来就行了。

    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记