我怀疑我已经完成了以下主题。但是,目前还不清楚。
Why does the serial BT data I received get chopped out?
克里斯,这是你提出的一个很好的解决方法。在你提供的解决方案中,附加'\ n'的解决方案适合我,因为我纯粹从我的PC(MATLAB)传输浮点值 - 转换为字符串后 - 到我的Android手机。我正在使用以下代码通过搜索'\ n'来对数据进行分组,但仍然会收到的数据有时会出现乱码。请告诉我我要改变什么。aReader = new InputStreamReader( mmInStream );
mBufferedReader = new BufferedReader( aReader );
aString = mBufferedReader.readLine();
mHandler.obtainMessage(BluetoothActivity.MESSAGE_READ, aString).sendToTarget();
这是我在处理程序中显示数据的内容:
String readMessage = (String) msg.obj;
try{
float readM = Float.parseFloat(readMessage);
text.append("\n" + readM);
}catch (NumberFormatException e) {
text.append("\n Number Format Exception!!");
e.printStackTrace();
}
这种接待有什么问题?如果你能快速回答这将是很好的,因为这是我项目的结论部分,截止日期已接近尾声。谢谢!
答案 0 :(得分:0)
我自己解决了这个问题。我将分隔符从“\ n”更改为“N”(因为没有字符是我的数据中浮点值的一部分)并且我已经实现了令人满意的传输速率,数据完整性超过99%(我发送的2000个样本中)在接收器(我的应用程序)中,从MATLAB以每秒600个样本的速率,只有10个出现乱码。但是,感谢@Chris Stratton的想法!