一 知識講解首先要懂幾個非常重要的概念:1.檔案
2.檔案流:
3.檔案流類和檔案流物件
二 實現方法講解
建立乙個輸出檔案流物件:
使用成員函式close();
儲存在外部介質上(個人認為就是你的硬碟什麼的)的資料集合,是程式設計中的重要概念。對於普通使用者常用到資料檔案和程式檔案。
程式中輸入和輸出的物件就是資料檔案。
根據檔案中資料的組織形式,可分為ascii檔案和二進位制檔案。
檔案流不是若干個檔案組成的流,檔案流本身不是檔案,而只是以檔案為輸入輸出物件的流。若要對磁碟檔案輸入輸出就必須通過檔案流來實現。
cin,cout 只能處理c++中以標準裝置為物件的輸入輸出。所以有時候就必須定義以磁碟檔案為物件的輸入輸 出流物件。(原因)在c++的標準i/o庫中定義了幾種檔案類,專門用於對磁碟檔案的輸入輸出操作。
istreamostreamiostreamifstreamofstreamfstream
*c++是通過流物件進行輸入輸出的,由於cin cout 事先已經在標頭檔案iostream中定義好,所以使用者不用再定義。
ofstream outfile ;
需要將檔案流物件和指定的磁碟檔案建立連線指定檔案的工作方式。
呼叫檔案流的成員函式-open2. 在定義文*件流物件時指定引數ofstream outfile ;
outfile.open(「fiel.txt」,ios::out);
作用與open 相同,更為方便。ostream outfile ("file,txt",ios::out);
對於outfile的第二個引數指定的是檔案的開啟方式,根據實際情況指定開啟方式就行了。下面的**意義列舉了開啟方式及作用說明。
方式 作用
ios::in
以輸出方式開啟檔案
ios::out
以輸出方式開啟檔案(這是預設方式),如果已有此名字的檔案,則將其內容刪除
以輸出方式開啟檔案,寫入的資料新增在檔案的末尾
ios::ate
開啟乙個已有檔案,檔案指標指向檔案末尾
ios::trunc
|ios::binary
以二進位制形式開啟檔案,如果不指定方式則預設ascii方式
ios::nocreate
開啟乙個已有檔案,不存在則開啟失敗,nocreate 意思是不建立
ios::noreplace
如果檔案不存在則建立新的檔案如果檔案已經存在則開啟失敗,noreplace 意思是不覆蓋原有的檔案
ios::in|ios::out
以輸入和輸出方式開啟檔案,檔案可讀可寫
ios::out|ios::binary
以二進位制方式開啟乙個輸出檔案
ios::in|ios::binary
以二進位制形式開啟乙個輸入檔案
檔案流物件名.close();
#include #include #include#include #include #include #include #define tour_amount 15000
using namespace std;
class init_of_node
;void init_of_node::open_file( )
{ ffile.open( "file.txt",ios::in ) ;
if( !ffile) //以輸入的方式開啟檔案 ,在當前路徑下建立了dna.txt文字檔案!
檔案執行結果:
在c語言中,用file結構來表示檔案流
C 檔案的開啟與關閉
本節中檔案指的是磁碟檔案。c 根據檔案 file 內容的資料格式,可分為兩類 二進位制檔案 訪問的最小資訊單位為位元組 byte c 把每個檔案都看成乙個有序的位元組流,每乙個檔案或者以檔案結束符 end of file marker 結束,或者在特定的位元組號處結束,如下圖所示。當開啟乙個檔案時,...
vb中檔案的開啟 檔案的關閉
資料檔案的操作按以下步驟進行 開啟資料檔案 首次操作為建立資料檔案並且開啟 進行讀寫操作 關閉資料檔案 1 檔案的開啟 格式 open 檔名 for 方式 access 訪問型別 lock as 檔案號 len 記錄長度 檔名 資料檔案的名字,該檔名可能還包括目錄 資料夾及驅動器。binary 二進...
C 流檔案的開啟與關閉
流 檔案是c 提供的一種特殊形式的檔案,也稱緩衝區型檔案。與普通意義檔案不同,它是c 語言提 供給程式設計師和被除訪問裝置之間的一層抽象的內容,是與物理裝置無關的邏輯裝置。在 流 檔案上,用 來寫操作的函式既可用於寫磁碟檔案,也可用來印表機的輸出,而非 流 檔案與具體裝置相關。c 中 有兩種性質的 ...