2012-01-14 2 views
0

Я пытаюсь добавить даты в txt-файл. Но это не выходит в читаемом формате для чтения.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; 
    } 

ответ

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(); 
    } 
+0

Спасибо AJG85, теперь работает :) – user628298

0

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

Смежные вопросы