是什么导致我的输出如此混乱?
What is causing my output to be so messy?
我目前正在从 android 设备读取传感器值,并将它们流式传输到连接的 PC 客户端。
bzero(buffer,256);
//fgets(buffer,255,stdin);
n = write(sockfd,buffer,strlen(buffer));
if (n < 0)
error("ERROR writing to socket");
while(1){
bzero(buffer,256);
n = read(sockfd,buffer,255);
if (n < 0)
error("ERROR reading from socket");
sleep(1);
printf("%s\n",buffer);
}
close(sockfd);
return 0;}
输出数据的PC客户端代码。
while(!stopFlag){
try {
out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(s.getOutputStream())), true);
// out.printf(String.valueOf(accel[0]),accel[1],accel[2]);
out.printf(String.valueOf(d.format(accel[0]))+" "+String.valueOf(d.format(accel[1]))+" "+String.valueOf(d.format(accel[2])) + " Accelerometer " + "\n");
out.printf(String.valueOf(d.format(gyro[0]))+" "+String.valueOf(d.format(gyro[1]))+" "+String.valueOf(d.format(gyro[2]))+ " Gyroscope " + "\n");
out.printf(String.valueOf(d.format(magnet[0]))+" "+String.valueOf(d.format(magnet[1]))+" "+String.valueOf(d.format(magnet[2]))+" Magnetometer "+ "\n\n");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
正在发送的传感器值的代码片段。
我该如何解决这个问题或者输出数据的更简洁的方法是什么? [已解决]
还有如何将输出写成 csv 格式的文件。我环顾四周,但仍然不太确定如何读取我的传感器值,因为我有一个 4x4 传感器值和传感器名称,如上图所示。
如果我要在客户端添加一个 delay/sleep 函数,在关闭应用程序端的套接字后,客户端仍然会显示传入的值,有什么想法吗?
如有任何帮助或建议,我们将不胜感激!
此致
罗杰为我提供了正确答案,但不确定他的 post 现在在哪里。
删除 \n(新行)解决了问题,数据现在不会流到下一行。
我目前正在从 android 设备读取传感器值,并将它们流式传输到连接的 PC 客户端。
bzero(buffer,256);
//fgets(buffer,255,stdin);
n = write(sockfd,buffer,strlen(buffer));
if (n < 0)
error("ERROR writing to socket");
while(1){
bzero(buffer,256);
n = read(sockfd,buffer,255);
if (n < 0)
error("ERROR reading from socket");
sleep(1);
printf("%s\n",buffer);
}
close(sockfd);
return 0;}
输出数据的PC客户端代码。
while(!stopFlag){
try {
out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(s.getOutputStream())), true);
// out.printf(String.valueOf(accel[0]),accel[1],accel[2]);
out.printf(String.valueOf(d.format(accel[0]))+" "+String.valueOf(d.format(accel[1]))+" "+String.valueOf(d.format(accel[2])) + " Accelerometer " + "\n");
out.printf(String.valueOf(d.format(gyro[0]))+" "+String.valueOf(d.format(gyro[1]))+" "+String.valueOf(d.format(gyro[2]))+ " Gyroscope " + "\n");
out.printf(String.valueOf(d.format(magnet[0]))+" "+String.valueOf(d.format(magnet[1]))+" "+String.valueOf(d.format(magnet[2]))+" Magnetometer "+ "\n\n");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
正在发送的传感器值的代码片段。
我该如何解决这个问题或者输出数据的更简洁的方法是什么? [已解决]
还有如何将输出写成 csv 格式的文件。我环顾四周,但仍然不太确定如何读取我的传感器值,因为我有一个 4x4 传感器值和传感器名称,如上图所示。
如果我要在客户端添加一个 delay/sleep 函数,在关闭应用程序端的套接字后,客户端仍然会显示传入的值,有什么想法吗?
如有任何帮助或建议,我们将不胜感激! 此致
罗杰为我提供了正确答案,但不确定他的 post 现在在哪里。
删除 \n(新行)解决了问题,数据现在不会流到下一行。