0
最近我想写点云数据在Visual Studio 2010中使用C++在我使用的ostream输出数据开始到.txt文件,但我发现它慢当写入数据时。如何快速写入大量数据转化为txt文件
我的代码:
std::ofstream outfile;
outfile.open(filename.c_str());
for(int index = 0;index < pointcloud.size();index++){
outfile<<pointcloud[index].x<<pointcloud[index].y<<pointcloud[index].z
<<pointcloud[index].r<<pointcloud[index].g<<pointcloud[index].b<<'\n';
}
outfile<<std::endl;
输出点云是非常巨大的,几乎是0.5G。写入.txt文件需要几分钟的时间。如何提高写入数据的速度?我认为这可能是缓存缓冲区大小的问题,但不确定。有人可以帮我弄这个吗?
你可以使用std ::副本以提高性能。 –
是对源数据('pointcloud')所有的内存中,或者是它的容器包装以“基于云”的数据?如果是后者,你的问题可能在那里? – franji1
获得更快的硬盘和更多的RAM。您的性能受到硬盘驱动器速度的限制。改变这个宇宙的物理定律之后,唯一的答案就是更快的硬件。 –