需要用到 c++ 中另乙個標準庫fstream
資料型別
描述ofstream
該資料型別表示輸出檔案流,用於建立檔案並向檔案寫入資訊。
ifstream
該資料型別表示輸入檔案流,用於從檔案讀取資訊。
fstream
該資料型別通常表示檔案流,且同時具有 ofstream 和 ifstream 兩種功能,這意味著它可以建立檔案,向檔案寫入資訊,從檔案讀取資訊。
模式標誌
描述追加模式。所有寫入都追加到檔案末尾。
ios::ate
檔案開啟後定位到檔案末尾。
ios::in
開啟檔案用於讀取。
ios::out
開啟檔案用於寫入。
ios::trunc
如果該檔案已經存在,則先刪除該檔案
ios::binary
二進位制方式
從鍵盤輸入的字元儲存到緩衝區從檔案讀取的資料也儲存在緩衝區
然後呼叫命令輸出到終端上
平常說的輸入輸出,都是指緩衝區的輸入輸出,緩衝區是主體
tellg() 和 tellp()
這兩個成員函式不用傳入引數,返回pos_type 型別的值(根據ansi-c++ 標準) ,就是乙個整數(long型別),代表當前get 流指標的位置 或 put 流指標的位置,所謂位置其實就是距離檔案開頭的位元組數seekg() 和seekp()這對函式分別用來改變流指標get 和put的位置。ios::beg(預設的,從流的開頭開始定位),seekg ( off_type offset, seekdir direction );
seekp ( off_type offset, seekdir direction );
ios::cur(從流的當前位置開始定位),
ios::end(從流的末尾開始定位)。
bad()fail()eof()good()// 定位到 fileobject 的第 n 個位元組(假設是 ios::beg)
fileobject.seekg( n );
// 把檔案的讀指標從 fileobject 當前位置向後移 n 個位元組
fileobject.seekg( n, ios::cur );
// 把檔案的讀指標從 fileobject 末尾往回移 n 個位元組
fileobject.seekg( n, ios::end );
// 定位到 fileobject 的末尾
fileobject.seekg( 0, ios::end );
要想重置以上成員函式所檢查的狀態標誌,你可以使用成員函式clear(),沒有引數。
getline()
在庫中的getline()函式有兩種過載形式:二進位制檔案則使用下面成員函式write ( char * buffer, streamsize size );作用是: 從istream中讀取至多n個字元(包含結束標記符)儲存在s對應的陣列中。即使還沒讀夠n個字元,
如果遇到delim 或 字數達到限制,則讀取終止,delim都不會被儲存進s對應的陣列中。
read ( char * buffer, streamsize size );
這裡 buffer 是一塊記憶體的位址,用來儲存或讀出資料。引數size 是乙個整數值(byte),表示要從快取(buffer)中讀出或寫入的字元數
清空緩衝區
cin.sync(); //全部清空
cin.ignore(int , char ); //int形參表示最多刪除多少位元組,char形參表示遇到什麼字元中斷操作
(1)開啟檔案
ofstream outfile; //建立檔案物件
outfile.open("file.dat", ios::out | ios::trunc ); | 表示多種模式結合
(2)關閉檔案ofstream 《檔案物件》("檔名",模式); //以輸出方式建立檔案物件 ,會自動關聯到檔名
(3)寫入檔案《檔案物件》.close();
(4)讀取檔案《檔案物件》 << "this is a line.\n";
《檔案物件》 << "this is another line.\n";
(5)二進位制檔案讀寫while (!《檔案物件》.eof()) //以行為單位進行迴圈
參考:int main ()
C 中的檔案操作
c 建立目錄 建立目錄c sixage directoryinfo d directory.createdirectory c sixage d1指向c sixage sixage1 directoryinfo d1 d.createsubdirectory sixage1 d2指向c sixage...
C 中的檔案操作
在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 cout 一般情況下就是指的顯示器,所以,cout write stdout n 就表示把字串 wr...
C 中的檔案操作
在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 cout 一般情況下就是指的顯示器,所以,cout write stdout n 就表示把字串 wr...