ofstream-保存函数以返回txt

时间:2012-01-14 00:47:05

标签: c++ linux ofstream

我正在尝试在txt文件中添加日期。但这并不是一种可读的阅读形式。

有人可以帮助我吗?我将非常感激!谢谢。

代码

SAVE:

//...code....///

ofstream myfile ("text.txt");
  if (myfile.is_open())
  {
    myfile << "date: " << date_function();
    myfile.close();
  }

日期功能:

  void example::date_function(){
  //...code....///       
  clock = localtime(&attrib.st_atime);
  strftime(buf, sizeof(buf), "%a %Y-%m-%d %H:%M:%S %Z", clock);
  cout << buf;
  }

2 个答案:

答案 0 :(得分:1)

您的日期函数的返回类型为void,您将其插入到文件中。这没什么意义,也许你想要更像这样的东西:

void date_function(ofstream & ofs){     
  clock = localtime(&attrib.st_atime);
  strftime(buf, sizeof(buf), "%a %Y-%m-%d %H:%M:%S %Z", clock);
  ofs << "date: " << buf;
  }

ofstream myfile ("text.txt");
  if (myfile.is_open())
  {
    date_function(myfile);
    myfile.close();
  }

答案 1 :(得分:0)

date_function的返回类型应为string。

  string example::date_function(){
      clock = localtime(&attrib.st_atime);
      strftime(buf, sizeof(buf), "%a %Y-%m-%d %H:%M:%S %Z", clock);
      return buf;
  }

(顺便说一下,你在哪里定义了buf?它在你的问题中使用过,但是我看不到定义?)