C-我可以将格式化的时间输出到文本文件吗

时间:2018-11-29 11:32:58

标签: c time file-io

我想将时间输出到文本文件,并且时间的格式应为(dd-mm-yy)。我已经提到了How to print time in format: 2009‐08‐10 18:17:54.811(使用来自顶部答案的代码),现在我被这段代码所困扰:

int main()
{
    time_t timer;
    char buffer[26], line[50]; // Hoping to feed in date and time into a string (line[50])
    struct tm* tm_info;

    time(&timer);
    tm_info = localtime(&timer);

    strftime(buffer, 26, "%d-%m-%y %H:%M:%S", tm_info);
    puts(buffer);


    return 0;
}

哪个给我输出标准时间输出的当前本地时间和日期,格式为(dd-mm-yy)和(hh-mm-ss)。所以现在我想知道是否也可以将这种格式输入文本文件。

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

您可以使用fopenfclosefputs来写入文件。

有关更多信息 阅读fopenfclosefputs

示例:

FILE *fp = fopen("time.txt", "w");
if (fp == NULL) return 1;
fputs(buffer, fp);
fclose(fp);

答案 1 :(得分:1)

使用fputs函数。在您的puts(buffer)行之后添加此代码。

FILE* file = fopen("yourtextfile.txt","w");
if (file != NULL){
    fputs(buffer,file);
    fclose(file);
}

fopen中的第二个参数应根据您的需要进行更改:"w"将删除文件中先前写入的内容,"a"将追加(在文件末尾写入) )。在这两种情况下,如果文件不存在,都会创建该文件。