我的工作是一个压力敏感的LED地板,它输出它的传感器在一个二维阵列。我想记录这些数据并将其发送到CSV文件中。然而,用我当前的代码,我每秒收集300.000 KB。
void DemoProjectApp::recorddata()
{
std::ofstream myfile;
myfile.open("datafloor.csv");
while(pressed = true)
{
for (int i = 0; i < ProjectSettings::NR_OF_TILES; i++)
{
myfile << "Tile" << i << ",";
myfile << tileIndexToSensorValues[i][0] << ",";
myfile << tileIndexToSensorValues[i][1] << ",";
myfile << tileIndexToSensorValues[i][2] << ",";
myfile << tileIndexToSensorValues[i][3] << "\n";
myfile.flush();
}
}
if(pressed = false)
{
myfile.close();
}
}按下是一个布尔值,将true或false更改为开始和停止记录。有没有人有办法减少输出,但仍然得到相关的数据?
提前感谢!
发布于 2016-06-13 09:34:10
好吧,我觉得自己很蠢,但答案是在压力下的布尔加==。完全忽略了它。
发布于 2016-06-13 09:31:55
你所写的实际上是一系列的图像。也就是一个视频文件。在非常低效率的编码方案中编码的视频。我猜压力场没有急剧的变化,所以我的第一种方法是用视频编解码器(MPEG4、h264等)对它进行编码。
https://stackoverflow.com/questions/37786055
复制相似问题