OS 以檔案為單位管理外部儲存資料。程式存取資料必須先以檔案名定位,再讀寫內容。外部儲存包含磁碟、光碟、USB 等,教程以磁碟檔案為代表。
| 特性 | ASCII 檔 (文字檔) | 二進位檔 (位元組檔) |
|---|---|---|
| 儲存單位 | 1 位元組 = 1 ASCII 碼 | 記憶體原樣位元複製 |
| 數值範例 | 100000 → 6 位元組 | 100000 → 4 位元組 (long) |
| 可讀性 | 記事本直接看 | 亂碼,需程式解析 |
| 轉換開銷 | 有 (二進位⇄ASCII) | 無 |
| 適用場景 | 報表、設定檔、跨平台交換 | 高效能暫存、大量資料、結構體序列化 |
字元資料兩者相同(本身即 ASCII);數值資料差異巨大。
C++ 標準庫同時提供兩層介面,開發者依場景選擇:<</>> 走高階,read()/write() 走低階。
理解檔案類型、儲存格式、I/O 分層,能讓你在「人類可讀」與「機器高效」間做出正確權衡,設計出既好維護又高效能的資料持久化方案。