C語言將日期、時間保存到文本文件中的方法
前言
今天突然興起,看來一下C語言的文件操作,以前在學(xué)習(xí)的時候,總是一帶而過,覺得沒有什么用處;但是現(xiàn)在看來,還真的沒有什么用處,最后,我現(xiàn)在還有用到,當(dāng)然這只是我的個人認(rè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+");
模式:

如果處理的是二進(jìn)制文件,則需使用下面的訪問模式來取代上面的訪問模式:
"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;
}
所示代碼運(yùn)行結(jié)果為:

下面進(jìn)入正題:
如何將日期、時間存儲到記事本文件中,
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;
}
運(yùn)行結(jié)果如下:

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
C語言實(shí)現(xiàn)統(tǒng)計一行字符串的單詞個數(shù)
這篇文章主要介紹了C語言實(shí)現(xiàn)統(tǒng)計一行字符串的單詞個數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07
C語言?超詳細(xì)講解算法的時間復(fù)雜度和空間復(fù)雜度
算法復(fù)雜度分為時間復(fù)雜度和空間復(fù)雜度。其作用:?時間復(fù)雜度是度量算法執(zhí)行的時間長短;而空間復(fù)雜度是度量算法所需存儲空間的大小2022-03-03
C語言字符函數(shù)與字符串函數(shù)的實(shí)現(xiàn)示例
C語言標(biāo)準(zhǔn)庫中的<ctype.h>和<string.h>頭文件分別提供了豐富的字符處理和字符串處理函數(shù),本文就來介紹一下C語言字符函數(shù)與字符串函數(shù)的實(shí)現(xiàn)示例,感興趣的可以了解一下2024-11-11
C/C++獲取主機(jī)網(wǎng)卡MAC地址的三方法
MAC地址(Media Access Control address),又稱為物理地址或硬件地址,是網(wǎng)絡(luò)適配器(網(wǎng)卡)在制造時被分配的全球唯一的48位地址,通過獲取MAC地址可以判斷當(dāng)前主機(jī)的唯一性可以與IP地址綁定并實(shí)現(xiàn)網(wǎng)絡(luò)準(zhǔn)入控制,本文給大家介紹了使用C/C++獲取主機(jī)網(wǎng)卡MAC地址的三方法2023-11-11

