C语言将日期、时间保存到文本文件中的方法

所属分类: 软件编程 / C 语言 阅读数: 94
收藏 0 赞 0 分享

前言

今天突然兴起,看来一下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+");

模式:

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

"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 <stdio.h>
#include <string.h>
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;
}

所示代码运行结果为:

下面进入正题:

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

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

2、如何保存

/*
vs2010在编译生成程序之后,dos界面会出现闪退的情况,
解决办法:
1.在源程序后面添加getchar();
2.添加头文件#include之后在main函数结尾前写上system("pause");
*/
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <Windows.h>

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;
}

运行结果如下:

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

更多精彩内容其他人还在看

C++中四种对象生存期和作用域以及static的用法总结分析

以下是对C++中四种对象生存期和作用域以及static的用法进行了详细的介绍,需要的朋友可以过来参考下
收藏 0 赞 0 分享

C++嵌套类与局部类详细解析

从作用域的角度看,嵌套类被隐藏在外围类之中,该类名只能在外围类中使用。如果在外围类之外的作用域使用该类名时,需要加名字限定
收藏 0 赞 0 分享

C++空类详解

以下是对C++中的空类进行了详细的介绍,需要的朋友可以过来参考下
收藏 0 赞 0 分享

C++之友元:友元函数和友元类详解

友元是一种允许非类成员函数访问类的非公有成员的一种机制。可以把一个函数指定为类的友元,也可以把整个类指定为另一个类的友元
收藏 0 赞 0 分享

C++中返回指向函数的指针示例

int (*ff(int)) (int *,int);表示:ff(int)是一个函数,带有一个int型的形参,该函数返回int (*) (int *,int),它是一个指向函数的指针,所指向的函数返回int型并带有两个分别是Int*和int型的形参
收藏 0 赞 0 分享

C数据结构之单链表详细示例分析

以下是对C语言中的单链表进行了详细的分析介绍,需要的朋友可以过来参考下
收藏 0 赞 0 分享

C数据结构之双链表详细示例分析

以下是对c语言中的双链表进行了详细的分析介绍,需要的朋友可以过来参考下
收藏 0 赞 0 分享

浅析如何在c语言中调用Linux脚本

如何在c语言中调用Linux脚本呢?下面小编就为大家详细的介绍一下吧!需要的朋友可以过来参考下
收藏 0 赞 0 分享

深入解析unsigned int 和 int

以下是对unsigned int和int进行了详细的分析介绍,需要的朋友可以过来参考下
收藏 0 赞 0 分享

浅谈C++中的string 类型占几个字节

本篇文章小编并不是为大家讲解string类型的用法,而是讲解我个人比较好奇的问题,就是string 类型占几个字节
收藏 0 赞 0 分享
查看更多