C語言將日期、時間保存到文本文件中的方法
前言
今天突然興起,看來一下C語言的文件操作,以前在學(xué)習(xí)的時候,總是一帶而過,覺得沒有什么用處;但是現(xiàn)在看來,還真的沒有什么用處,最后,我現(xiàn)在還有用到,當然這只是我的個人認為,并不能說明什么,在此我將自己寫的一段代碼附上,希望能和大家一同學(xué)習(xí)
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() 函數(shù)從 fp 所指向的輸入文件中讀取一個字符。返回值是讀取的字符,如果發(fā)生錯誤則返回 EOF。下面的函數(shù)允許您從流中讀取一個字符串
char *fgets( char *buf, int n, FILE *fp );
函數(shù) fgets() 從 fp 所指向的輸入流中讀取 n - 1 個字符。它會把讀取的字符串復(fù)制到緩沖區(qū) buf,并在最后追加一個 null 字符來終止字符串。
如果這個函數(shù)在讀取最后一個字符之前就遇到一個換行符 '\n' 或文件的末尾 EOF,則只會返回讀取到的字符,包括換行符。您也可以使用 int fscanf(FILE *fp, const char *format, ...) 函數(shù)來從文件中讀取字符串,但是在遇到第一個空格字符時,它會停止讀取。
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; }
所示代碼運行結(jié)果為:
下面進入正題:
如何將日期、時間存儲到記事本文件中,
1、如何獲取日期、時間(time.h)
2、如何保存
/* vs2010在編譯生成程序之后,dos界面會出現(xiàn)閃退的情況, 解決辦法: 1.在源程序后面添加getchar(); 2.添加頭文件#include之后在main函數(shù)結(jié)尾前寫上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; }
運行結(jié)果如下:
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
VC++ 使用 _access函數(shù)判斷文件或文件夾是否存在
這篇文章主要介紹了VC++ 使用 _access函數(shù)判斷文件或文件夾是否存在的相關(guān)資料,需要的朋友可以參考下2015-10-10C語言結(jié)構(gòu)體版學(xué)生成績管理系統(tǒng)
這篇文章主要為大家詳細介紹了C語言結(jié)構(gòu)體版的學(xué)生成績管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-02-02C++實現(xiàn)LeetCode(48.旋轉(zhuǎn)圖像)
這篇文章主要介紹了C++實現(xiàn)LeetCode(48.旋轉(zhuǎn)圖像),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-07-07