處理類別
C++處理檔案的類別為ifstream(檔案輸入), ofstream(檔案輸出), fstream(檔案輸出入). 輸入是指讀入程式的意思, 輸出是指由程式寫入檔案
使用fstream, 需宣告一個物件, 再由此物件進行檔案串流操作
fstream file;
開啟檔案
使用fsteam的open(參數1, 參數2)函數進行開檔, 參數1為檔案名稱, 第2參數為開啟模式. 開啟模式如下
| 模式參數 | 用途 |
| ios::in | 檔案開啟為讀取(輸入)狀態 |
| ios::out | 檔案開啟為寫入(輸出)狀態 |
| ios::ate | 從檔案結尾讀取(輸入)及寫入(輸 出)資料 |
| ios::app | 從檔案結尾寫入(輸出)資料 |
| ios::trunc | 如果檔案存在,就清除檔案 內容的資料 |
| ios::nocreat | 若開啟檔案時,檔案不存 在,則產生錯誤 |
| ios::noreplace | 若開啟檔案時,檔案存在, 且ate與app為被設定,則產生錯誤 |
| ios::binary | 以二進位模式開啟檔案,預 設的檔案模式為文字模式 |
模式若有二個或以上, 使用 | 隔開, 如
file.open(“d:\\test.jpg”, ios::in|ios::binary);
常用函數
| 函數 | 說明 |
| open(str,mode) | 以mode模式開啟名為str的檔案 |
| close( ) | 關閉檔案 |
| is_open( ) | 檢查檔案是否為開啟狀態, 若是則傳回true,否則傳回flase |
| write(str,size) | 將str陣列中size個字元寫入到檔案中 |
| read(str,size) | 從檔案中讀取資料至檔案結 尾為止設定給str陣列,但至多不超過size個 字元 |
| get(char) | 從檔案中讀取一個字元 |
