前言
本篇詳細介紹了 文件順序讀寫常用函數,快來看看吧~
歡迎關注個人主頁:逸狼
創造不易,可以點點贊嗎~
如有錯誤,歡迎指出~
目錄
前言
?編輯
文件順序讀寫函數
fgetc函數
示例
fputc函數
逐個字符寫入
寫入26個字母
文件拷貝
fgets函數
fputs函數
讀鍵盤上的字符,再打印在屏幕上
fprintf函數
示例
fscanf函數
示例
fwrite函數
示例
fread函數
示例
sprintf函數
示例
sscanf函數
示例
函數對比
scanf與printf
fscanf與fprintf
sscanf與sprintf
文件順序讀寫函數
fgetc函數
用于讀取文件內的單個字符
示例
fputc函數
用于將單個字符寫入文件中
逐個字符寫入
寫入26個字母
文件拷貝
寫一個代碼,完成將data1.txt文件的內容 拷貝一份生成data2.txt
#include<stdio.h>
int main()
{FILE* pfread = fopen("data1.txt", "r");if (pfread == NULL){perror("fopen->data1.txt");return 1;}FILE* pfwrite = fopen("data2.txt", "w");if (pfwrite == NULL){fclose(pfread);//判斷為真后,要將pfread置為空指針pfread = NULL;perror("fopen->data2.txt");return 1;}//數據的讀寫(拷貝)int ch = 0;//每讀一個字符就放入ch中,直到讀完為止while ((ch = fgetc(pfread)) != EOF){fputc(ch, pfwrite);//寫入data2.txt文件中}fclose(pfread);fclose(pfwrite);return 0;
}
fgets函數
讀取一行字符
#include<stdio.h>
int main()
{FILE* pf = fopen("data.txt", "r");if (pf == NULL){perror("fopen->data1.txt");return 1;}//讀一行//最多讀num-1個字符,第num個字符放\0char arr[20] = "xxxxxxxxxxxxx";fgets(arr, 10, pf);fclose(pf);pf = NULL;}
fputs函數
寫入一行字符
#include<stdio.h>
int main()
{FILE* pf = fopen("data.txt", "w");if (pf == NULL){perror("fopen->data1.txt");return 1;}//寫文件 寫一行fputs("abcdef\n", pf);fputs("abcdef\n", pf);fputs("abcdef\n", pf);fclose(pf);pf = NULL;}
讀鍵盤上的字符,再打印在屏幕上
fprintf函數
格式化打印在文件上,參數比printf 多了一個文件指針
?
示例
fscanf函數
示例
fwrite函數
以二進制形式寫文件
示例
fread函數
以二進制形式讀文件
示例
sprintf函數
將格式化數據轉換成字符串
示例
sscanf函數
讀取字符串并放入標準化數據中
示例
函數對比
scanf與printf
- ?scanf針對標準輸入(鍵盤)的格式化輸入函數
- ?printf 針對標準輸出(屏幕)的格式化輸出函數
fscanf與fprintf
- ?fscanf針對所有輸入流的格式化輸入的函數
- ?fprintf 針對所有輸出流的格式化輸出的函數
sscanf與sprintf
- ?sscanf 從一個字符串讀取一個格式化的數據
- ?sprintf 把一個格式化的數據轉換成字符串
?