c語言操作文本的基本使用方法
字符讀寫函數(shù) :fgetc和fputc
字符串讀寫函數(shù):fgets和fputs
數(shù)據(jù)塊讀寫函數(shù):freed和fwrite
格式化讀寫函數(shù):fscanf和fprinf
1.字符讀寫:
fgetc函數(shù)的功能是從指定的文件中讀一個字符,函數(shù)調用的形式為:
字符變量=fgetc(文件指針);
fputc函數(shù)的功能是把一個字符寫入指定的文件中,函數(shù)調用的形式為:
fputc(字符量,文件指針);
2.字符串讀寫
讀字符串函數(shù)fgets
函數(shù)的功能是從指定的文件中讀一個字符串到字符數(shù)組中,函數(shù)調用的形式為:
fgets(字符數(shù)組名,n,文件指針);
寫字符串函數(shù)fputs
fputs函數(shù)的功能是向指定的文件寫入一個字符串,其調用形式為:
fputs(字符串,文件指針);
3.數(shù)據(jù)塊讀寫
讀數(shù)據(jù)塊函數(shù)調用的一般形式為:
fread(buffer,size,count,fp);
寫數(shù)據(jù)塊函數(shù)調用的一般形式為:
fwrite(buffer,size,count,fp);
4.格式化讀寫
fscanf函數(shù),fprintf函數(shù)與前面使用的scanf和printf函數(shù)的功能相似,都是格式化讀寫函數(shù)。兩者的區(qū)別在于fscanf函數(shù)和fprintf函數(shù)的讀寫對象不是鍵盤和顯示器,而是磁盤文件。
這兩個函數(shù)的調用格式為:
fscanf(文件指針,格式字符串,輸入表列);
fprintf(文件指針,格式字符串,輸出表列);
文件定位
移動文件內部位置指針的函數(shù)主要有兩個,即rewind函數(shù)和fseek函數(shù)。
rewind函數(shù)前面已多次使用過,其調用形式為:
rewind(文件指針);
它的功能是把文件內部的位置指針移到文件首。
下面主要介紹fseek函數(shù)。fseek函數(shù)用來移動文件內部位置指針,其調用形式為:
fseek(文件指針,位移量,起始點);
其中:
“文件指針”指向被移動的文件。
“位移量”表示移動的字節(jié)數(shù),要求位移量是long型數(shù)據(jù),以便在文件長度大于64KB時不會出錯。當用常量表示位移量時,要求加后綴“L”。
“起始點”表示從何處開始計算位移量,規(guī)定的起始點有三種:文件首,當前位置和文件尾。其表示方法如下表。
起始點 表示符號 數(shù)字表示
文件首 SEEK_SET 0
當前位置 SEEK_CUR 1
文件末尾 SEEK_END 2
例如:
fseek(fp,100L,0);
其意義是把位置指針移到離文件首100個字節(jié)處。
還要說明的是fseek函數(shù)一般用于二進制文件。在文本文件中由于要進行轉換,故往往計算的位置會出現(xiàn)錯誤。
c語言中常用的文件檢測函數(shù)有以下幾個。
文件結束檢測函數(shù)feof函數(shù)
調用格式:
feof(文件指針);
功能:判斷文件是否處于文件結束位置,如文件結束,則返回值為1,否則為0。
讀寫文件出錯檢測函數(shù)
ferror函數(shù)調用格式:
ferror(文件指針);
功能:檢查文件在用各種輸入輸出函數(shù)進行讀寫時是否出錯。如ferror返回值為0表示未出錯,否則表示有錯。
文件出錯標志和文件結束標志置0函數(shù)
clearerr函數(shù)調用格式:
clearerr(文件指針);
功能:本函數(shù)用于清除出錯標志和文件結束標志,使它們?yōu)?值。
相關文章
C++11 std::shared_ptr總結與使用示例代碼詳解
這篇文章主要介紹了C++11 std::shared_ptr總結與使用,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06C++ Opencv自寫函數(shù)實現(xiàn)膨脹腐蝕處理技巧
這篇文章主要介紹了C++ Opencv 自寫函數(shù)實現(xiàn)膨脹腐蝕處理,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10C語言文件操作實現(xiàn)數(shù)據(jù)持久化(幫你快速了解文件操作函數(shù))
持久數(shù)據(jù)其實就是將數(shù)據(jù)保存到數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關于C語言文件操作實現(xiàn)數(shù)據(jù)持久化(幫你快速了解文件操作函數(shù))的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-11-11