在 C/C++ 程式設計中,文件操作是基礎且關鍵的技能。本文將詳細介紹如何使用標準庫函數逐字節讀取文件內容,並通過完整的代碼示例演示核心流程。
文件讀取主要包含四個關鍵步驟:打開文件、檢查狀態、循環讀取、關閉文件。以下是標準實現流程:
#include <stdlib.h>
#include <stdio.h>
void readFile() {
FILE *file; // 文件指針
char c; // 單字符緩衝區
// 以只讀模式打開文件
file = fopen("c:\\test.txt", "r");
// 驗證文件是否成功打開
if (NULL == file) {
printf("can't open this file, make sure the file exist!!!\n");
exit(1);
}
puts("open file successful!!!");
puts("READ FILE NOW:");
// 讀取第一個字符
c = fgetc(file);
// 循環讀取直到文件結尾
while (c != EOF) {
putchar(c); // 輸出字符
c = fgetc(file); // 讀取下一個字符
}
printf("\n");
fclose(file); // 關鍵:釋放資源
}
必須檢查 fopen 返回值,防止空指針解引用導致程序崩潰。讀取循環中先讀取再判斷 EOF 是標準模式,避免多讀或少讀。最後務必調用 fclose(),否則會導致文件描述符洩漏。

掌握逐字節讀取後,可進一步學習緩衝讀取(fread)、行讀取(fgets)及格式化讀取(fscanf)等更高效的文件操作方式。