學習來源:C語言文件操做 (freecplus.net)html
文本文件的讀寫數據庫
在實際開發中,文本文件以行的形式存放字符串,如C程序的源代碼,一段文字等,因此通常是按行寫入和讀取數據。函數
1.向文件寫入數據學習
C語言向文件中寫入數據庫函數有fputc、fputs、fprintf,在實際開發中,fputc和fputs沒什麼用,只介紹fprintf就能夠了。fprintf函數的聲明以下:.net
int fprintf(FILE *fp, const char *format, ...);
fprintf函數的用法與printf相同,只是多了第一個參數文件指針,表示把數據輸出到文件。3d
fprintf() 返回成功寫入的字符的個數,失敗則返回負數指針
/* * 程序名:12-02-01.c,此程序用於向文件中寫入文本數據 */ #include <stdio.h> int main() { int i ; FILE *fp = NULL ; int resultsum= 0; fp = fopen("D:/學習/111.txt", "w"); if ( fp == NULL ) { printf("D:/學習/111.txt 打開失敗"); return -1; } for (i = 0; i < 10; i++) { fprintf(fp, "今天是2020年12月2日.\n"); } fclose(fp); }
2. 向文件讀取數據orm
C語言從文件中讀取數據的庫函數有fgetc、fgets、fscanf,在實際開發中,fgetc和fscanf沒什麼用,只介紹fgets就能夠了。fgets函數的原型以下:htm
char *fgets(char *buf, int size, FILE *fp);
fgets的功能是從文件中讀取一行。blog
參數buf是一個字符串,用於保存從文件中讀到的數據。
參數size是打算讀取內容的長度。
參數fp是待讀取文件的文件指針。
若是文件中將要讀取的這一行的內容的長度小於size,fgets函數就讀取一行,若是這一行的內容大於等於size,fgets函數就讀取size-1字節的內容。
調用fgets函數若是成功的讀取到內容,函數返回buf,若是讀取錯誤或文件已結束,返回空,即0。若是fgets返回空,能夠認爲是文件結束而不是發生了錯誤,由於發生錯誤的狀況極少出現。