本文通過(guò)一個(gè)簡(jiǎn)短的程序說(shuō)明了在C++中進(jìn)行文件的輸入與輸出的方法。
下面首先給出一段代碼,實(shí)現(xiàn)在當(dāng)前運(yùn)行目錄中建立一個(gè)文件,并寫(xiě)入一些信息:
#include <fstream.h>
void main() // C++程序從主函數(shù)main開(kāi)始運(yùn)行
{
ofstream SaveFile(“VeVb.txt”);
SaveFile << “Hello World, articles from www.survivalescaperooms.com, You will like it!”;
SaveFile.close();
}
就這么短的代碼,實(shí)現(xiàn)了在運(yùn)行目錄下建立一個(gè)名為VeVb.txt的文件,并向它寫(xiě)入“Hello World, articles from www.survivalescaperooms.com, You will like it!”。
下面將對(duì)程序進(jìn)行詳細(xì)的解釋?zhuān)?/p>
#include <fstream.h> —— 你需要包含此文件以使用C++的文件輸入/輸出函數(shù)。注意:一旦包含了這個(gè)文件,你不再需要(為了使用cout/cin)包含iostream.h,因?yàn)閒stream.h已經(jīng)自動(dòng)包含了它。
在這個(gè)頭文件中聲明了若干個(gè)類(lèi),包括ifstream,ofstream及fstream,它們都繼承自istream和ostream類(lèi)。
ofstream SaveFile(“VeVb.txt”);
1)ofstream即“output file stream(輸出文件流)”。它將建立一個(gè)句柄(handle),以便我們以后能以一個(gè)文件流的形式寫(xiě)入文件。
2)SaveFile —— 這是文件句柄的名字,當(dāng)然,你還可以換用任何一個(gè)你想要的名稱(chēng)。
3)(“cpp-home.txt”); —— 打開(kāi)名為cpp-home.txt的文件。如果程序運(yùn)行的當(dāng)前目錄已經(jīng)存在這樣一個(gè)文件,則它將被替換掉;萬(wàn)一不存在,程序也會(huì)為你創(chuàng)建一個(gè)為文件,你不必為此而擔(dān)心。
現(xiàn)在,讓我們稍微深入一點(diǎn)點(diǎn)。首先,我要指出的是:ofstream是一個(gè)類(lèi)。因此ofstream SaveFile(“cpp-home.txt”);這一語(yǔ)句將創(chuàng)建一個(gè)該類(lèi)的對(duì)象;而我們?cè)诶ㄌ?hào)中所傳遞的參數(shù)實(shí)際上將傳給構(gòu)造函數(shù):在這里我們將我們要建立的文件的名稱(chēng)作為實(shí)際參數(shù)傳遞給了該類(lèi)的構(gòu)造函數(shù)。當(dāng)然,我們還可以傳遞其它的一些信息,不過(guò)我以后再對(duì)其進(jìn)行講解。
SaveFile << “Hello World, articles from www.survivalescaperooms.com, You will like it!”; —— “<<”看起來(lái)是不是很親切?不錯(cuò),想必你已經(jīng)在cout << 中見(jiàn)到過(guò)。這是一個(gè)預(yù)定義好的運(yùn)算符。不管怎么說(shuō),這行語(yǔ)句所做的,是將上面的那段文本寫(xiě)入文件。正如前面所提到的,SaveFile是一個(gè)文件句柄,它關(guān)聯(lián)一個(gè)打開(kāi)的流式文件。所以,我們只須輸入句柄名,再跟著輸入“<<”,然后接著寫(xiě)下一串用引號(hào)括起來(lái)的文本,就可以實(shí)現(xiàn)對(duì)文件的寫(xiě)入。如果我們想寫(xiě)入的是某個(gè)變量的值而不是帶引號(hào)的文本,也只須像通常使用cout << 一樣將變量傳遞給句柄對(duì)象,像這樣:
SaveFile << variablename;
SaveFile.close(); —— 既然我們打開(kāi)了一個(gè)流文件,那么當(dāng)我們用完它之后,就必須關(guān)閉它。SaveFile是ofstream類(lèi)的一個(gè)對(duì)象,而該類(lèi)(ofstream)有一個(gè)用于關(guān)閉文件的成員函數(shù),即close() 函數(shù)。因此,我們只要依次輸入文件句柄名,點(diǎn)號(hào)和close(),就可以關(guān)閉該文件!
注意:一旦你關(guān)閉文件,在你重新打開(kāi)它以前,就再不能對(duì)它進(jìn)行訪問(wèn)。
新聞熱點(diǎn)
疑難解答