文件IO笔试题

news/2024/10/1 21:41:57

文件IO

笔试题

作业:设计程序,获取当前系统时间,把时间转换为特定格式”yy年mm月dd日 星期x tt:mm:ss”,并每隔1s写入到本地磁盘中一个叫做log.txt的文本中,如果文本不存在则创建。

代码:

/*****************************************************************************************************************
*	
*	file name	:	FileTime.c
*	author	 	:	cnzycwp@126.com
*	data  	 	:	2024/05/09
*	function	:	实现获取当前时间并每隔1秒写入本地磁盘中一个叫做log.txt的文本中
*	note	 	:	None
* 	
*  	CopyRight (c)	2024	cnzycwp@126.com 	All Right Reseverd
*
* ****************************************************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<time.h>//用户自定义缓冲区的大小
//#define BUFFRSIZE 512int main(int argc, char const *argv[])
{//1.由于写入时间的文件路径需要通过命令行传递,则需要分析命令行参数数量是否符合需求if (2 != argc){printf("Argument is invaild!\n");exit(1);}//2.打开待写入文件(wb),若文本不存在则创建文本FILE *fp = fopen(argv[1],"w+b");if (NULL == fp){printf("Fopen %s is error!\n",argv[1]);exit(1);}//3.获取当前系统时间,并把时间转换为特定格式“yy年mm月dd日 星期x tt:mm:ss”// time_t Tseconds = time(NULL);// struct tm *ft = localtime(&Tseconds);// int tm_year = (ft->tm_year) + 1900;// int tm_mon  = (ft->tm_mon) + 1;// int tm_mday = ft->tm_mday;// int tm_wday = ft->tm_wday;// int tm_hour = ft->tm_hour;// int tm_min  = ft->tm_min;// int tm_sec  = ft->tm_sec;//定义年月日,星期,时分秒变量int tm_year,tm_mon,tm_mday,tm_wday,tm_hour,tm_min,tm_sec;//3.每隔1s写入本地磁盘中一个叫做log.txt的文本中while (1){//4.获取当前系统时间,并把时间转换为特定格式“yy年mm月dd日 星期x tt:mm:ss”time_t Tseconds = time(NULL);struct tm *ft = localtime(&Tseconds);tm_year = (ft->tm_year) + 1900;     //年从1900年开始tm_mon  = (ft->tm_mon) + 1;         //月份从0开始tm_mday = ft->tm_mday;tm_wday = ft->tm_wday;tm_hour = ft->tm_hour;tm_min  = ft->tm_min;tm_sec  = ft->tm_sec;fprintf(fp,"%d年%d月%d日,星期%d,%d:%d:%d",tm_year,tm_mon,tm_mday,tm_wday,tm_hour,tm_min,tm_sec);//fwrite(data_buffer,BUFFRSIZE,1,fp);fflush(fp);                         //刷新文件方便查看文件fprintf(fp,"\n");sleep(1);                           //休眠1秒}//5.完成写入动作,关闭文件fclose(fp);return 0;}

结果验证:

image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/29522.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

BGP小实验

目录拓扑图环境介绍复盘实验总结配置R3R4R1R2 拓扑图环境介绍每台路由器上都有looback0,比如R4是4.4.4.4/32,直连接口地址为10.1.34.4/24,其他路由器直连和looback口地址类似,R4上还有looback1,地址为44.44.44.44/24。 R3和R4是EBGP邻居关系,AS123内路由器是IBGP邻居关系…

Vue入门到关门之Vue3学习

一、常用API 注意:本文项目均使用脚手架为 Vite 1、setup函数 (1)介绍 如果在项目中使用配置项API,那么写起来就和vue2的写法是一样的;但是如果在项目中写的是组合式API,那么组件中所用到的:数据、方法等等,均要配置在setup中。此外,setup() 钩子也是在组件中使用组合…

sso-单点登录

单点登录 项目组成 基于spring-boot-2.1.8.RELEASE,使用redis完成完成 session记录。sso-basesso-serversso-client1sso-client2 sso-baseTokenFilter: 拦截获取是否登录,并获取登录用户设置到线程变量中TokenUtil:从redis获取指定key判断是否登录,以及登录用户;写入sessi…

Vue入门到关门之Vue2高级用法

一、在vue项目中使用ref属性 ref 属性是 Vue.js 中用于获取对 DOM 元素或组件实例的引用的属性。通过在普通标签上或组件上添加 ref 属性,我们可以在 JavaScript 代码中使用 this.$refs.xxx 来访问对应的 DOM 元素或组件实例。放在普通标签上,通过 this.$refs.名字---》取到的…

Vue入门到关门之Vue3项目创建

一、vue3介绍 1、为什么要学习vue3? vue3的变化: 首先vue3完全兼容vue2,但是vue3不建议用vue2的写法;其次,vue3拥抱TypeScript,之前vue2使用的JavaScript,ts完全兼容js 最后之前学的vue2 是配置项api,而vue3是组合式api optionsAPI(旧) => compositionAPI(新), 效…

文件IO常用的函数接口

本文归纳整理了常用的文件IO常见的函数接口及其用法,以供读者查阅 目录打开文件fopen关闭文件fclose数据读取字符读取:fgetc、getc、getchar按行读取:fgets、gets按块读取:fread写入文件字符写入:fputc、putc、putchar按行写入:fputs、puts按块写入:fwrite文件位置(光标位…

python教程6.6-发送邮件smtplib

实现步骤: Python对SMTP⽀持有 smtplib 和 email 两个模块, email 负责构造邮件, smtplib 负责发送邮件,它对smtp协议进⾏了简单的封装。 简单代码示例:发送html格式的邮件:在html中插入图片: