ofstream - сохранить функцию для возврата текста - PullRequest
0 голосов
/ 14 января 2012

Я пытаюсь добавить даты в текстовый файл. Но это не выходит в читаемом формате для чтения.

Кто-то может мне помочь? Буду очень признателен !, Спасибо.

код

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 ]

1 голос
/ 14 января 2012

Ваша функция даты имеет тип возврата 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();
  }
0 голосов
/ 14 января 2012

Тип возвращаемого значения date_function должен быть строкой.

  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? Это используется в вашем вопросе, но я не вижу определения?)

...