C語言 檔案操作

2021-09-19 10:43:51 字數 1871 閱讀 4157

從作業系統的角度來看,每乙個與主機相連的輸出輸入裝置都看作是乙個檔案。在程式執行時,常常需要將一些資料(執行的最終結果或中間資料)輸出到磁碟上存放起來,以後需要時再從磁碟中輸入到計算機的記憶體。這就要用到磁碟檔案。c語言將檔案看作是乙個字元(位元組)的序列,即乙個乙個字元(位元組)的資料順序組成。根據資料的組成形式,可分為ascii檔案和二進位制檔案。ascii檔案又稱文字(text)檔案,它的每乙個位元組可放乙個ascii碼,代表乙個字元。二進位制檔案是把記憶體中的資料按其在記憶體中的儲存形式按原樣輸出到磁碟上存放。因而乙個c檔案就是乙個位元組流或二進位製流。它把資料看作是一連串的字元(位元組),而不考慮記錄的界限。換句話說,c語言中檔案不是由記錄(record)組成的(這是和pascal或其他高階語言不同的)。在c語言中對檔案的訪問是以字元(位元組)為單位的。輸出輸入的資料流的開始和結束僅受程式控制而不受物理符號(如回車換行符)控制。也就是說,在輸出時不會自動增加回車換行符作為記錄結束的標誌,輸入時不以回車換行符作為記錄的間隔(事實上c檔案並不是由記錄構成的)。把這種檔案稱為流式檔案。c語言允許對檔案訪問乙個字元,這就增加了處理的靈活性。

檔案結構體

file*fp;

開啟檔案,關閉檔案

fopen()

file*fp=fopen(「***.txt」,「w」) ;

fclose()

fclose(fp);

fopen(「路徑+檔名」,「開啟方式」);

檔案使用方式由r,w,a,t,b,+六個字元拼成,各字元的含義是:
引數

意義r(read):

讀w(write):寫追加

b(banary):

二進位制檔案

+:讀和寫

函式名意義

fgetc(file *stream)

從流中讀取字元

fputc(int c, file *fp)

將字元ch寫到檔案

fgets(buf,n,stdin)

c語言中從檔案中獲取字串函式

fputs(str,fp);

向指定的檔案寫入乙個字串

fscanf(filestream,constcharformat,[argument…]);

格式化輸入

fprintf (file* stream, const char*format, [argument])

傳送格式化輸出到乙個檔案中

fread ( void *buffer, size_t size, size_t count, file *stream) ;

從檔案流中讀資料,最多讀取count個項

fwrite(const void* buffer, size_t size, size_t count, file* stream);

向指定的檔案中寫入若干資料塊

feof是c語言標準庫函式,其原型在stdio.h中,其功能是檢測流上的檔案結束符,如果檔案結束,則返回非0值,否則返回0

注意:feof判斷檔案結束是通過讀取函式fread/fscanf等返回錯誤來識別的,故而判斷檔案是否結束應該是在讀取函式之後進行判斷。比如,在while迴圈讀取乙個檔案時,如果是在讀取函式之前進行判斷,則如果檔案最後一行是空白行,可能會造成記憶體錯誤。

重定位流(資料流/檔案)上的檔案內部位置指標

函式設定檔案指標stream的位置。如果執行成功,stream將指向以fromwhere(偏移起始位置:檔案頭0(seek_set),當前位置1(seek_cur),檔案尾2(seek_end))為基準,偏移offset(指標偏移量)個位元組的位置。如果執行失敗(比如offset超過檔案自身大小),則不改變stream指向的位置。

c語言檔案操作

rt null ch fgetc fp while ch eof fclose fp 本 例程式的功能是從檔案中逐個讀取字元,在螢幕上顯示。程式定義了檔案指標fp,以讀文字檔案方式開啟檔案 d jrzh example ex1 1.c 並使fp指向該檔案。如開啟檔案出錯,給出提示並退出程式。程式第1...

C語言檔案操作

1.首先要理解幾個概念 檔案 按一定規則儲存在磁碟上的資料集合。檔名 能唯一標識某個磁碟檔案的字串。形式 碟符 路徑 檔名.副檔名 二進位制檔案 資料以二進位制形式在儲存在磁碟上。裝置檔案 輸入 輸出裝置 標準輸入檔案 鍵盤 標準輸出檔案 標準錯誤輸出檔案 顯示器 檔案型指標 c語言是通過名為fil...

C語言檔案操作

1,兩種檔案訪問方式 輸入,輸出方式 順序訪問 直接訪問 2,資料的兩種存放形式 文字檔案 二進位制檔案 3.檔案指標 定義檔案型別指標變數的一般形式 file 指標變數名 例如 file fp1,fp2 4.開啟檔案 在使用檔案之前,需開啟檔案.在c裡使用fopen函式開啟檔案.格式為 fopen...