文件输出中的值有限

时间:2015-06-10 15:57:43

标签: c++ filestream

我有一个返回执行时间的程序,每次运行的输出都显示在同一行的文件中。

.done()

4次运行后,这里是文件中的输出:

#include <iostream>
#include <fstream>
#include <math>
#include <boost>

using namespace std;

int main() {

std::ofstream file("MyFile.txt",std::ios_base::app);

v2 = rand() % 100 + 1; // just to burn  some time 
std::cout << v2 ;    // just to burn  some time


boost::chrono::duration<double> sec = boost::chrono::system_clock::now() - start;
    file<<sec.count() << ";";
file.close();
  return 0 ;
}

我希望在30次运行后,第30个结果必须显示在换行符中。没有任何添加的函数或循环会影响运行时的持续时间。我认为还有其他方法可以通过awk sed格式化输出文件。

1 个答案:

答案 0 :(得分:0)

您可以使用awk。

awk '{ gsub(/([0-9]+(.[0-9]*)?;){30}/, "&\n"); print }' MyFile.txt

这应该在每30个\n

之后插入;