小提示:
精度的默認值為6,如果采用浮點格式輸出時,精度的含義是有效位數;如果是采用定點格式或指數格式,精度的含義是小數位數。
8.5 文件流
考點8 文件流的建立、打開及關閉
l.文件流的建立
文件流是文件流類的實例對象C+十系統在頭文件fstream中定義了3個文件流類:
ifstream,ofstream和fstream。要創建文件流,必須包含頭文件fstream,并聲明所創建的文件流是上述哪個實例對象例如:
ifstream fin; //創建輸入流對象firs
tfstream fout; //創建輸出流對象fout
itream fio; //創建輸入輸出流對象fio
2.文件的打開與關閉
關于文件的打開是既可以在定義文件流對象的同時打開文件,也可以在定義文件流對象以后用open ( )函數打開文件。C++允許用以下兩種方法之一打開文件
(1)用成員函數open()。
(2)用構造1*1數(創建對象)。
其中,一可以通過構造函數或open()函數的第2個參數確定文件的打開方式。文件的打開方式如表8-3所示的常量來表示。
表8-3 打開文件的常量表示
當文件相連接的流對象的生命周期結束時,它們的釋放函數將關閉與這些流對象相連接的文件。另外,也可以使用close()函數顯式地關閉文件。
考點9 文件流狀態的判別
如表8-4所示的文件流的成員函數可以判別文件流的狀態。
表8-4 文件流的成員函數
考點10 文件流的定位與特殊的文件流
1.文件流的定位
文件流的位置以字節為單位,它有兩種不同的位置:輸入位置和輸出位置。文件流的定位方式有三種用ios base::seek dir中的一組枚舉符號表示,它們是:
(1)ios base::beg:相對于文件首;
(2)ios base::cur:相對于當前位置(負數表示當前位置之前);
(3)ios base::end:相對于文件尾。
每次輸入或輸出后自動定位于下一個需要輸入或輸出的位置。其中,完成輸入定位的函數有;seekp()和tellg();完成輸出定位的函數有:seekp)和tellp()。
2.特殊的文件流
有兩種特殊的文件流:CON和PRN。其中,以CON為文件名時,流對象對應于鍵盤或顯示器;以PRN為文件名時,流對象對應于打印機。
考點11 文件流的無格式輸入輸出
無格式輸入輸出通常只針對文件流,有關的函數見表8-5。
表8-5 無格式輸入輸出函數
文章來源于領測軟件測試網 http://www.kjueaiud.com/