檔案操作學習後整理

2021-09-12 11:36:06 字數 2187 閱讀 6197

c語言中沒有輸入輸出語句,所有的輸入輸出功能都用 ansi c提供的一組標準庫函式來實現。檔案操作標準庫函式有:

檔案的開啟操作 fopen 開啟乙個檔案

檔案的關閉操作 fclose 關閉乙個檔案

檔案的讀寫操作 fgetc 從檔案中讀取乙個字元

fputc 寫乙個字元到檔案中去

fgets 從檔案中讀取乙個字串

fputs 寫乙個字串到檔案中去

fprintf 往檔案中寫格式化資料

fscanf 格式化讀取檔案中資料

fread 以二進位制形式讀取檔案中的資料

fwrite 以二進位制形式寫資料到檔案中去

getw 以二進位制形式讀取乙個整數

putw 以二進位制形式存貯乙個整數

檔案狀態檢查函式 feof 檔案結束

ferror 檔案讀/寫出錯

clearerr 清除檔案錯誤標誌

ftell 了解檔案指標的當前位置

檔案定位函式 rewind 反繞

fseek 隨機定位

(以上是對於檔案操作整理的比較全一點,由於我剛學習檔案操作,對其認知和應用比較淺,很多操作都沒有實際能用上在我目前的階段,所以摘了大佬的,下面是我自己的一些整理)。

file * fp = fopen("needfile.txt","r");

if( fp == null)

fclose(fp);

這裡首先定義乙個檔案指標fp,將fopen的返回值傳給它,對於fopen的用法,file * fopen ( const char * filename, const char * mode );詳情見於www.cplusplus.com。若檔案存在,fopen返回值為指向file物件的指標。若檔案不存在,使用perror函式可以列印出其原因,這裡要包含標頭檔案.最後最重要的是,開啟檔案操作一定要進行關閉操作fclose,否則會出現類似於記憶體洩露的現象,若是伺服器開發,後果可能挺嚴重的。

fliename這裡需要的是檔案路徑,絕對路徑和相對路徑都可。

還有檔案開啟操作裡的mode項,

這裡寫的是開啟檔案之後想要操作的型別主要的型別我查了一下,有如下幾種

「r」.為讀而開啟文字檔案.(不存在則出錯)

「w」.為寫而開啟文字檔案.(若不存在則新建,反之,則從檔案起始位置寫,原內容將被覆蓋)

「a」.為在檔案後面新增資料而開啟文字檔案.(若不存在,則新建;反之,在原檔案後追加)

「r+」.為讀和寫而開啟文字檔案.(讀時,從頭開始;在寫資料時,新資料只覆蓋所佔的空間,其後不變)

「wb」.為寫而開啟二進位制檔案.

「rb」.為讀而開啟二進位制檔案

「ab」.為在檔案後面新增資料而開啟乙個二進位制檔案.

「rb+」.為讀和寫而開啟二進位制檔案.只是在隨後的讀寫時,可以由位置函式設定讀和寫的起始位置.

「w+」.首先建立乙個新檔案,進行寫操作,隨後可以從頭開始讀.(若檔案存在,原內容將全部消失)

「a+」.功能與」a」相同;只是在檔案尾部新增新的資料後,可以從頭開始讀.

「wb+」.功能與」w+」同.只是在隨後的讀寫時,可以由位置函式設定讀和寫的起始位置.

char buf[5] = "cccc";

fwirte(buf,1,4,fp);

char  buf[1024] = ;

fread(buf,1,4,fp);

檔案讀寫操作好多個,我舉fwrite和fread為例子如上,

首先fwrite,這裡先要將需要定義輸入的字串或者字元等資料,然後寫fwrite函式,buf為

這裡我們先要開闢乙個緩衝區,size_t fwrite ( const void * ptr, size_t size, size_t count, file * stream );,依次填入相關資料,就okle。

其次fread,這裡需要開闢乙個陣列緩衝區,需要注意的是必須對陣列進行乙個初始化,不然讀到的東西會出問題。size_t fread ( void * ptr, size_t size, size_t count, file * stream );依次填入相關資料,就okle。

對於其他操作,www.cplusplus.com,都有關於其解釋,主要是我還沒實際運用到,等我以後深入了解後,再作補充。對於文章中可能會出現的錯誤,歡迎指正。

檔案操作整理

r 以讀方式開啟,只能讀檔案 如果檔案不存在,會發生異常 w 以寫方式開啟,只能寫檔案,如果檔案不存在,建立該文。如果檔案已存在,先清空,再開啟檔案 rb 以二進位制讀方式開啟,只能讀檔案 如果檔案不存在,會發生異常 wb 以二進位制寫方式開啟,只能寫檔案,如果檔案不存在,建立該檔案。如果檔案已存在...

Golang檔案操作整理

檔案建立 檔案刪除 檔案刪除的時候,不管是普通檔案還是目錄檔案,都可以用err os.remove filename 這樣的操作來執行。當然要是想移除整個資料夾,直接使用removeall path string 操作即可。可以看一下removeall函式的內部實現,整體上就是遍歷,遞迴的操作過程,...

PHP檔案操作整理

三種目錄表示 代表當前目錄 代表父級目錄 代表根目錄 常用的檔案操作函式有 通用讀寫 fpen fwrite fread fclose fgets feof php快速讀寫 file put contents file get contents 獲取檔案資訊 basename dirname fst...