C++文件輸出輸入

此篇文章只是簡要介紹c++中文件輸入輸出的基本步驟,詳細情況請看附加的鏈接

1.       文件流和文件流對象

1)       文件流

Ø  文件流是以外存文件爲輸入輸出對象的數據流。輸出文件流是從內存流向外存文件的數據,輸入文件流是從外存文件流向內存的數據。每一個文件流都有一個內存緩衝區與之對應。

Ø  請區分文件流文件的概念。文件流本身不是文件,而只是以文件爲輸入輸出對象的流。若要對磁盤文件輸入輸出,就必須通過文件流來實現。

Ø  文件流類:專門用於對磁盤文件的輸入輸出操作

                                     i.             ifstream類,它是從istream類派生的。 用來支持從磁盤文件的輸入。

                                   ii.             ofstream類,它是從ostream類派生的。 用來支持向磁盤文件的輸出。

                                 iii.             fstream類,它是從iostream類派生的。 用來支持對磁盤文件的輸入輸出。

2)       文件流對象

Ø  定義:用文件流類定義的對象稱爲文件流對象。

Ø  作用:要以磁盤文件爲對象進行輸入輸出,必須定義一個文件流類的對象,通過文件流對象將數據從內存輸出到磁盤文件,或者通過文件流對象從磁盤文件將數據輸入到內存。

其實在用標準設備爲對象的輸入輸出中,也是要定義流對象的,如cin,cout就是流對象。cin,cout已在iostream.h中事先定義,而在用磁盤文件時,由於情況各異,文件流對象無法事先統一定義,必須由用戶自己定義。

2.       使用文件流的基本步驟

1)       打開一個文件,其目的是將一個文件流對象與某個磁盤文件聯繫起來

2)       使用文件流對象的成員函數,將數據寫入到文件或從文件中讀取數據

3)       關閉已打開的文件,即將文件流對象與磁盤文件脫離聯繫。

例如:

#include <fstream.h>
void main() //程序從這裏開始運行
{
ofstream SaveFile(“file1.txt”);  //定義輸出文件流對象SaveFile,並將SaveFile與文件file1聯繫起來(即打開了文件file1)
SaveFile << “Hello World”;    //利用運算符<<將文本寫入文件,與cout<<用法類似
SaveFile.close();             //關閉文件
}

下面分步介紹

3.       文件操作流程

1)       定義一個文件流對象

ifstream infile;//定義輸入文件流對象infile

ifstream infile(file1.txt);//定義輸入文件流對象infile,並將infile與文件’file1.txt”聯繫起來(打開文件file1.txt)

ofstream outfile;// 定義輸出文件流對象outfile

fstream iofile;// 定義輸入/輸出文件流對象iofile

2)       用文件流對象的成員函數open()或構造函數,打開一個文件。如:

outfile.open(file2.txt); //用成員函數open()打開文件file2.txt

ourfile(“file3.txt”);//用構造函數打開文件file3.txt

 打開文件時,可以利用參數設置文件打開方式、文件屬性。

文件打開後,要判斷打開文件是否成功。

3)       用提取、插入運算或成員函數對文件讀/寫。如:

infile>>ch;

4)       用完文件後,使用文件流對象的成員函數關閉文件。如:

infile.close();

 

參考:

c++中的文件輸入/輸出

ofstream和ifsteam的詳細用法

c++的IO流的函數

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章