雷火电竞-中国电竞赛事及体育赛事平台

歡迎來(lái)到入門(mén)教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C語(yǔ)言將日期、時(shí)間保存到文本文件中的方法

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊:

前言

今天突然興起,看來(lái)一下C語(yǔ)言的文件操作,以前在學(xué)習(xí)的時(shí)候,總是一帶而過(guò),覺(jué)得沒(méi)有什么用處;但是現(xiàn)在看來(lái),還真的沒(méi)有什么用處,最后,我現(xiàn)在還有用到,當(dāng)然這只是我的個(gè)人認(rèn)為,并不能說(shuō)明什么,在此我將自己寫(xiě)的一段代碼附上,希望能和大家一同學(xué)習(xí)

1、打開(kāi)一個(gè)文本文件

 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+");

模式:

如果處理的是二進(jìn)制文件,則需使用下面的訪問(wèn)模式來(lái)取代上面的訪問(wèn)模式:

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

2、寫(xiě)入文件

int fputc( int c, FILE *fp );

c:寫(xiě)入的字符    fp:打開(kāi)的文件流

3、讀取文件

int fgetc( FILE * fp );

fgetc() 函數(shù)從 fp 所指向的輸入文件中讀取一個(gè)字符。返回值是讀取的字符,如果發(fā)生錯(cuò)誤則返回 EOF。下面的函數(shù)允許您從流中讀取一個(gè)字符串

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

函數(shù) fgets() 從 fp 所指向的輸入流中讀取 n - 1 個(gè)字符。它會(huì)把讀取的字符串復(fù)制到緩沖區(qū) buf,并在最后追加一個(gè) null 字符來(lái)終止字符串。

如果這個(gè)函數(shù)在讀取最后一個(gè)字符之前就遇到一個(gè)換行符 '\n' 或文件的末尾 EOF,則只會(huì)返回讀取到的字符,包括換行符。您也可以使用 int fscanf(FILE *fp, const char *format, ...) 函數(shù)來(lái)從文件中讀取字符串,但是在遇到第一個(gè)空格字符時(shí),它會(huì)停止讀取。 

4、關(guān)閉文件

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

所示代碼運(yùn)行結(jié)果為:

下面進(jìn)入正題:

如何將日期、時(shí)間存儲(chǔ)到記事本文件中,

1、如何獲取日期、時(shí)間(time.h)

2、如何保存

/*
vs2010在編譯生成程序之后,dos界面會(huì)出現(xiàn)閃退的情況,
解決辦法:
1.在源程序后面添加getchar();
2.添加頭文件#include之后在main函數(shù)結(jié)尾前寫(xiě)上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("時(shí)間:",fp);
  fprintf(fp,"%d",p->tm_hour+8);  //獲取時(shí)
  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;
}

運(yùn)行結(jié)果如下:

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)我們的支持。

上一篇:C++中rapidjson組裝繼續(xù)簡(jiǎn)化的方法

欄    目:C語(yǔ)言

下一篇:vc++ 監(jiān)控指定路徑下文件變化實(shí)現(xiàn)代碼

本文標(biāo)題:C語(yǔ)言將日期、時(shí)間保存到文本文件中的方法

本文地址:http://www.jygsgssxh.com/a1/Cyuyan/365.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有