c语言中把时间拷到字符串中,C语言将日期、时间保存到文本文件中的方法

前言

今天突然兴起,看来一下C语言的文件操作,以前在学习的时候,总是一带而过,觉得没有什么用处;但是现在看来,还真的没有什么用处,最后,我现在还有用到,当然这只是我的个人认为,并不能说明什么,在此我将自己写的一段代码附上,希望能和大家一同学习

1、打开一个文本文件

FILE *fopen( const char * filename, const char * mode );

linux文件路径:

linux:fopen("/tmp/test.txt", "w+");

windows文件路径:

windows:fopen("E:/Desktop/cyuyan_sz/vs2010/one/jiguoti/temp/a.txt","w+");

模式:

6111f33c053f43e3fd45f65bfc4d0b06.png

如果处理的是二进制文件,则需使用下面的访问模式来取代上面的访问模式:

"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"、

2、写入文件

int fputc( int c, FILE *fp );

c:写入的字符    fp:打开的文件流

3、读取文件

int fgetc( FILE * fp );

fgetc() 函数从 fp 所指向的输入文件中读取一个字符。返回值是读取的字符,如果发生错误则返回 EOF。下面的函数允许您从流中读取一个字符串

char *fgets( char *buf, int n, FILE *fp );

函数 fgets() 从 fp 所指向的输入流中读取 n - 1 个字符。它会把读取的字符串复制到缓冲区 buf,并在最后追加一个 null 字符来终止字符串。

如果这个函数在读取最后一个字符之前就遇到一个换行符 '\n' 或文件的末尾 EOF,则只会返回读取到的字符,包括换行符。您也可以使用 int fscanf(FILE *fp, const char *format, ...) 函数来从文件中读取字符串,但是在遇到第一个空格字符时,它会停止读取。

4、关闭文件

fclose( FILE *fp );

#include

#include

int main()

{

FILE *fp = NULL;

fp = fopen("E:/Desktop/cyuyan_sz/vs2010/one/jiguoti/temp/a.txt","w+");

fprintf(fp,"hello word......\n");

fputs("hello word......\n",fp);

fclose(fp);

getchar();

return 0;

}

所示代码运行结果为:

370eeef2f2bcec9338ed698d3e277db5.png

下面进入正题:

如何将日期、时间存储到记事本文件中,

1、如何获取日期、时间(time.h)

2、如何保存

/*

vs2010在编译生成程序之后,dos界面会出现闪退的情况,

解决办法:

1.在源程序后面添加getchar();

2.添加头文件#include之后在main函数结尾前写上system("pause");

*/

#include

#include

#include

#include

int main()

{

FILE *fp = NULL;

char *s="adasdsadasd";

time_t timep;

struct tm *p;

fp = fopen("E:/Desktop/cyuyan_sz/vs2010/one/jiguoti/temp/a.txt","a");

while(1)

{

time(&timep);

p=gmtime(&timep);

fputs("日期:",fp);

fprintf(fp,"%d",p->tm_year+1900); //获取年

fputs(":",fp);

fprintf(fp,"%d",p->tm_mon+1); //获取月

fputs(":",fp);

fprintf(fp,"%d",p->tm_mday); //获取日

fputs(" ",fp);

fputs("时间:",fp);

fprintf(fp,"%d",p->tm_hour+8); //获取时

fputs(":",fp);

fprintf(fp,"%d",p->tm_min); //获取分

fputs(":",fp);

fprintf(fp,"%d",p->tm_sec); //获取秒

fputs(" ",fp);

fputs("今天是今年的第 ",fp);

fprintf(fp,"%d",p->tm_yday); //获取今年的第几天

fputs(" 天\n",fp); //换行

fputs("\r\n",fp);

Sleep(1000); //1s保存一次

}

fclose(fp);

getchar();

return 0;

}

运行结果如下:

0a85da0ff081b042c20f56f2062e86ee.png

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值