fopen( ) 函式來建立或者開啟檔案,這個呼叫會初始化乙個
file
型別的物件。
原型
file *fopen( const char * filename, const char * mode );filename 是字串,用來命名檔案,訪問模式 mode 的值可以是下列值中的乙個:
模式描述
r只能讀,從頭讀。檔案不存在會出錯。
w只能寫,全部清空再從頭開始寫。檔案不存在則會建立乙個新檔案。
a只能寫,不清空從後面追加寫。檔案不存在則會建立乙個新檔案。
r+讀寫,不清空從頭覆蓋寫。檔案不存在會出錯。
w+讀寫,全部清空再從頭開始寫。檔案不存在則會建立乙個新檔案。
a+讀寫,從開頭讀,從後面追加寫。檔案不存在則會建立乙個新檔案。
如果處理的是二進位制檔案,則需使用下面的訪問模式來取代上面的訪問模式:
"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"fclose( ) 函式用來關閉檔案。
原型:
int fclose( file *fp );如果成功關閉檔案,fclose( ) 函式返回零,如果關閉檔案時發生錯誤,函式返回 eof。
函式 fputc() 把字元c寫入到 fp 所指向的輸出流中。寫入成功,它會返回寫入的字元的ascii碼值,發生錯誤返回 eof。
int fputc( int c, file* stream );函式 fputs() 把字串 s 寫入到 fp 所指向的輸出流中,不包括\0。寫入成功,檔案的位置指標會自動後移,返回乙個非負值,發生錯誤返回 eof。
int fputs( const char *s, file *stream );函式 fprintf() 根據指定的format(格式)傳送資訊(引數)到由stream(流)指定的檔案. fprintf()只能和printf()一樣工作. fprintf()的返回值是輸出的字元數,發生錯誤返回乙個負值。
int fprintf (file* stream, const char*format, [argument]);例項1:
#include main()
fgetc() 函式從 檔案中讀取乙個字元。返回值是讀取的字元的ascii碼值,發生錯誤則返回 eof。返回值本身是字元的ascii碼值,賦給字元型別變數時,它會自己轉換成字元型別。
int fgetc( file * fp );fgets() 原型
char *fgets( char *buf, int n, file *fp );從 fp 所指向的輸入流中讀取 n - 1 個字元。它會把讀取的字串複製到緩衝區 buf,並在最後追加乙個null 字元來終止字串。如果檔案中的該行不足n個字元,則讀完該行就結束。而如果該行(包括最後乙個換行符)的字元數超過n-1,則fgets只返回乙個不完整的行,但是,緩衝區buf總是以null字元結尾,對fgets的下一次呼叫會繼續讀該行。函式成功將返回buf,失敗或讀到檔案結尾返回null。因此我們不能直接通過fgets的返回值來判斷函式是否是出錯而終止的,應該借助feof函式或者ferror函式來判斷。
fscanf() 函式來從檔案中讀取字串,和scanf用法相同。
int fscanf(file*stream,constchar*format,[argument...]);例項2:
#include main()
例項3:
#include#includemain()
*/while(!feof(f1))//
正確方法
}
C 中的檔案讀寫操作 1
include iostream include fstream include vector include string using namespace std ofstream 檔案寫操作,記憶體寫入儲存裝置 ifstream 檔案讀操作,儲存裝置讀取到記憶體中 fstream 讀寫操作,對開...
c 檔案讀寫 文字讀寫
include int main else return 0 格式 intfscanf file stream,constchar format,返回值 如果成功,該函式返回成功匹配和賦值的個數。如果到達檔案末尾或發生讀錯誤,則返回 eof 引數1 file stream 檔案指標 引數2 cons...
C 檔案讀寫
原文 http www.vckbase.com document viewdoc id 1439 原作 john peregrine file i o using c 序論 我曾發表過檔案輸入輸出的文章,現在覺得有必要再寫一點。檔案 i o 在c 中比烤蛋糕簡單多了。在這篇文章裡,我會詳細解釋asc...