fstream是一個由C++提供的類別,可以用於將資料寫入檔案,或讀取檔案資料。欲使用fstream類別執行檔案的輸出入時,必須先宣告一個 fstream類別物件。
方式如下:
fstream file ; //宣 告一個fstream物 件
然後利用fstream所提供的open成員函數,開啟一個檔案。傳入open函數的參數有兩個,分別為欲開啟檔案名稱 、開啟該檔案的模式參數。
方式如下:
file.open(“Reader.txt”,ios::in) ; //在 讀取模式下開啟Reader.txt檔
若傳入的參數超過兩個可用 | 分開
file.open(“Reader.txt”,ios::in | :ios::binary) ; //在IO以及二進位制模式下開啟Reader.txt檔
open函數的模式參數如下:
ios::in 檔案開啟為讀取(輸入)狀態
ios::out 檔案開啟為寫入(輸出)狀態
ios::ate 從檔案結尾讀取(輸入)及寫入(輸出)資料
ios::app 從檔案結尾寫入(輸出)資料
ios::trunc 如果檔案存在,就清除檔案內容的資料
ios::nocreat 若開啟檔案時,檔案不存在,將產生錯誤
ios::noreplace 若開啟檔案時,檔案存在且ate與app為被設定,將產生錯誤
ios::binary 以二進位模式開啟檔案
常用的檔案處理函數:
open(str,mode) 以mode模式開啟名為str的檔案
close( ) 關閉檔案
is_open( ) 檢查檔案是否為開啟狀態, 若是則傳回true,否則傳回flase
write(str,size) 將str陣列中size個字元寫入到檔案中
read(str,size) 從檔案中讀取資料至檔案結尾為止。
設定給str陣列資料,但最多不超過size個字元