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

 更新时间:2019年04月05日 10:30:40   作者:逆夏的流年  
这篇文章主要给大家介绍了关于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+");

模式:

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

"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++简明讲解类型转换的使用与作用

    C++简明讲解类型转换的使用与作用

    类型转换(type cast),是高级语言的一个基本语法。它被实现为一个特殊的运算符,以小括号内加上类型名来表示,接下来让我们一起来详细了解
    2022-04-04
  • MFC程序执行过程深入剖析

    MFC程序执行过程深入剖析

    这篇文章主要介绍了MFC程序执行过程,包括对MFC执行流程的分析以及断点调试分析出的SDI程序执行流程,需要的朋友可以参考下
    2014-09-09
  • C语言修炼之路一朝函数思习得 模块思维世间生上篇

    C语言修炼之路一朝函数思习得 模块思维世间生上篇

    函数是一组一起执行一个任务的语句。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数
    2022-03-03
  • C语言数组和指针,内存之间的关系

    C语言数组和指针,内存之间的关系

    这篇文章主要介绍了C语言数组和指针,内存之间的关系,首先论证一维数组和一级指针之前的关系,我们常常使用一级指针指针的方式访问一维数组,只有对内存的理解到位才能理解它们直接的关系。需要的小伙伴可以参考一下
    2022-02-02
  • C语言创建动态dll和调用dll(visual studio 2013环境下)

    C语言创建动态dll和调用dll(visual studio 2013环境下)

    本篇文章主要介绍了C语言创建动态dll和调用dll(visual studio 2013环境下),非常具有实用价值,需要的朋友可以参考下
    2017-11-11
  • ros项目调试:vscode下配置开发ROS项目的详细教程

    ros项目调试:vscode下配置开发ROS项目的详细教程

    这篇文章主要介绍了ros项目调试:vscode下配置开发ROS项目,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • C++ OpenGL实现旋转立方体的绘制

    C++ OpenGL实现旋转立方体的绘制

    这篇文章主要主要为大家详细介绍了如何利用C++和OpenGL实现旋转立方体的绘制,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起动手尝试一下
    2022-07-07
  • C/C++实现双路快速排序算法原理

    C/C++实现双路快速排序算法原理

    这篇文章主要为大家详细介绍了C/C++实现双路快速排序算法原理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • C++面向对象中构造函数使用详解

    C++面向对象中构造函数使用详解

    学习过C语言的小伙伴知道:C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题,这篇文章主要介绍了C++面向对象中构造函数使用
    2022-10-10
  • C++利用GPAC实现生成MP4文件的示例代码

    C++利用GPAC实现生成MP4文件的示例代码

    GPAC主要针对学生和内容创作者,代表了一个跨平台的多媒体框架,开发人员可以使用它在 LGPL 许可下制作开源媒体。本文就来用GPAC实现生成MP4文件,感兴趣的可以了解一下
    2023-02-02

最新评论