首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言文件打開函數 fopen 詳解:12 種模式與錯誤處理

     編輯:關於C語言

fopen 語法

FILE *fp = fopen("文件名", "使用方式");
  • fp 必須聲明為 FILE *
  • 文件名可為路徑:"c:\\hzk16"(雙反斜杠轉義)

12 種文件打開模式

模式含義
rt只讀打開文本文件
wt只寫創建/截斷文本文件
at追加寫入文本文件末尾
rb只讀打開二進制文件
wb只寫創建/截斷二進制文件
ab追加寫入二進制文件末尾
rt+讀寫打開文本文件
wt+讀寫創建/截斷文本文件
at+讀寫打開文本文件,追加寫入
rb+讀寫打開二進制文件
wb+讀寫創建/截斷二進制文件
ab+讀寫打開二進制文件,追加寫入

模式字符組合邏輯

  • r: 讀,文件必須存在
  • w: 寫,不存在創建,存在則截斷清空
  • a: 追加,文件必須存在
  • t: 文本模式(默認,可省略)
  • b: 二進制模式
  • +: 讀寫雙向

關鍵說明

  1. 文本模式涉及 ASCII↔二進制轉換,較慢;二進制模式直接讀寫,無轉換
  2. 標準輸入/輸出/錯誤(鍵盤/屏幕/錯誤信息)由系統自動打開,可直接使用
  3. 打開失敗返回 NULL,必須檢查

標準錯誤處理模式

if ((fp = fopen("c:\\hzk16", "rb")) == NULL) {
    printf("\nerror on open c:\\hzk16 file!");
    getch(); // 等待用戶閱讀錯誤信息
    exit(1); // 非正常退出
}

fclose — 關閉文件

fclose(fp); // 釋放緩衝區、更新文件元數據、避免數據丟失

文件操作的第一步是正確選擇模式並處理打開失敗,這是健壯文件處理代碼的基礎。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved