【练习题】每隔1秒向文件中写入一行记录

编程读写一个文件test.txt,每隔1秒向文件中写入一行记录,类似于这样:
1 2009-7-30 15:16:42
2 2009-7-30 15:16:43
该程序应该无限循环,直到按Ctrl-C终止。下次再启动程序时在test.txt文件末尾追加记录,并且序号能够接续上次的序号,比如:
1 2009-7-30 15:16:42
2 2009-7-30 15:16:43
3 2009-7-30 15:19:02
4 2009-7-30 15:19:03
5 2009-7-30 15:19:04

程序:

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <Windows.h>

int main(void)
{
	time_t nowtime;
	struct tm *local;
	FILE *fp;

	while(1)
	{
		fp = fopen("record.txt","a+");
		if(fp == NULL)
		{
			perror("open file record.txt");
			exit(1);
		}
		nowtime = time(NULL);
		local = localtime(&nowtime);

		if(fprintf(fp,"%d-%d-%d %d:%d:%d\n",local->tm_year+1900,local->tm_mon+1,local->tm_mday,local->tm_hour,
			local->tm_min,local->tm_sec) < 0)
		{
			printf("error\n");
		}
		fprintf(stdout,"%d-%d-%d %d:%d:%d\n",local->tm_year+1900,local->tm_mon+1,local->tm_mday,local->tm_hour,
			local->tm_min,local->tm_sec);
		fclose(fp);
		Sleep(1000); //1000毫秒
	}
	
	return 0;
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值