C語言文件讀寫函數(shù)_第1頁
C語言文件讀寫函數(shù)_第2頁
C語言文件讀寫函數(shù)_第3頁
C語言文件讀寫函數(shù)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

C語言程序可以同時處理多個文件,為了對每一個文件進(jìn)行有效的管理,在打開一個文件時,系統(tǒng)會自動地在內(nèi)存中開辟一個區(qū),用來存放文件的有關(guān)信息(如文件名、文件狀態(tài)等)這些信息保存在一個結(jié)構(gòu)體變量中,該結(jié)構(gòu)體是由系統(tǒng)定義的,取名為FILE。FILE定義在頭文件stdio.h中。對每一個要進(jìn)行操作的文件,都需要定義一個指向FILE類型結(jié)構(gòu)體的指針變量,該指針稱為文件類型指針,文件類型指針的定義方法如下: FILE*指針變量; 如:FILE*fp;fp是一個指向FILE類型結(jié)構(gòu)體的指針變量。當(dāng)fp和某個文件建立關(guān)聯(lián)之后,通過fp即可找到存放該文件信息的結(jié)構(gòu)變量,然后按結(jié)構(gòu)變量提供的信息找到該文件,實施對文件的操作。文件打開函數(shù)fopen()Fopen函數(shù)的作用: 以指定方式打開指定文件。打開成功,返回一個文件類型指針;打開失敗,則返回一個空指針NULL。 格式: FILE*文件指針變量; 文件指針變量=fopen(“文件名”,“文件使用方式”); “文件名”指要打開文件的名稱。 “文件使用方式”指文件的類型和操作要求。如下表所示:通常打開文件的方法:FILE*文件指針變量;

文件指針變量=fopen(“文件名”,“文件使用方式”);

If(文件指針變量==NULL)

{ printf(“cannotopenthisfile\n”);

exit(0);

}注:當(dāng)打開文件出錯時,函數(shù)fopen會返回一個空指針NULL 出錯原因可能是以“r”方式打開一個不存在的文件,或者是磁盤已滿等。關(guān)閉文件的函數(shù): fclose(文件指針變量); 功能:用來關(guān)閉文件指針變量所指向的文件。成功返回0,否則返回非零值。

如:fclose(fp);注:1使用完一個文件后應(yīng)即時關(guān)閉。否則會浪費系統(tǒng)資源。 2關(guān)閉文件后,文件指針變量不再指向該文件,不能再通過該指針對該文件繼續(xù)進(jìn)行讀寫操作,除非再次打開該文件,使該指針變量重新指向該文件。格式化讀文件函數(shù)fscanf() 類似scanf函數(shù),都是格式化輸入函數(shù)。 但scanf函數(shù)的作用對象是終端鍵盤,而fscanf函數(shù)的作用對象是文件。一般格式: fscanf(文件指針變量,“格式控制”,輸入列表) “格式控制”與“輸入列表”同scanf函數(shù)中描述。 fscanf函數(shù)的作用: 從文件指針變量指向的文件中按指定格式讀取數(shù)據(jù)到輸入列表中的變量中。如:fscanf(fp,“%d:%d”,&x,&y);執(zhí)行結(jié)果是從fp指向的文件中讀取兩個整數(shù)到變量x和y中。格式化寫文件函數(shù)fprintf() 該函數(shù)類似printf函數(shù),都是格式化輸出函數(shù),只不過兩者的作用對象一個是文件,一個是終端。 fprintf函數(shù)的一般格式為:fprintf(文件指針,“格式控制”,輸出列表) “格式控制”與“輸出列表”同printf函數(shù)中描述。

fprintf函數(shù)的作用是將輸出項按指定的格式寫入到文件指針變量所指向的文件中。 如:fprintf(fp,“%d,%d”,100,200); 執(zhí)行結(jié)果是將100和200兩個整數(shù)存放到fp指向的文件中。 注:用fprintf和fscanf函數(shù)對文件讀寫使用方便,容易理解。 但由于在輸入時要將ASCII碼轉(zhuǎn)換為二進(jìn)制形式,在輸出時又要將二進(jìn)制形式轉(zhuǎn)換成字符, 花費時間較多,占用系統(tǒng)資源較大。 因此在數(shù)據(jù)量較大的情況下,最好不用fprintf和fscanf函數(shù),而用fread和fwrite函數(shù)。文件結(jié)束檢測函數(shù)feof函數(shù)調(diào)用格式:feof(文件指針);

功能:判斷文件是否處于文件結(jié)束位置如文件結(jié)束,則返回值為1,否則為0。使用格式讀寫函數(shù),生成一個數(shù)據(jù)文件 要求:文件內(nèi)容如下: code_flag comm_flag blank_flag total_flag 1 1 1 1 0 0 0 0 1 0 0 0 1 0 0 1說明:第一行是數(shù)據(jù)標(biāo)題,后面的是測試數(shù)據(jù),測試數(shù)據(jù)由用戶一行一行通

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論