C 核心程式設計 5 檔案操作

2022-09-20 17:33:11 字數 2847 閱讀 5321

5.1 文字檔案

程式執行時產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放,通過檔案可以將資料持久化。c++中對檔案操作需要包含標頭檔案

檔案型別分為兩種:

2、二進位制檔案: 檔案以文字的二進位制形式儲存在計算機中,使用者一般不能直接讀懂它們;

操作檔案的三大類:

1、ofstream:寫操作

2、ifstream:讀操作

3、fstream:讀寫操作

5.1.1 寫檔案

寫檔案步驟如下:

1、包含標頭檔案

#include

2、建立流物件

ofstream ofs;

3、開啟檔案

ofs.open("檔案路徑",開啟方式);

4、寫資料

ofs << "寫入的資料";

5、關閉檔案

ofs.close();

#include#include

using

namespace

std;

#include

//標頭檔案包含

//文字檔案 寫檔案

void

test1()

intmain()

總結:1、檔案操作必須包含標頭檔案fstream;

2、讀檔案可以利用ofstream,或fstream類;

3、開啟檔案時候需要指定操作檔案路徑,以及開啟方式;

4、利用 << 可以向檔案中寫資料;

5、操作完畢,要關閉檔案;

5.1.2 讀檔案

讀檔案步驟如下:

1、包含標頭檔案

#include

2、建立流物件

ifstream ifs;

3、開啟檔案

ifs.open("檔案路徑",開啟方式);

4、讀資料

四種讀取方式

5、關閉檔案

ifs.close();

#include#include

using

namespace

std;

#include

//標頭檔案包含

//文字檔案 讀檔案

void

test1()

//4、讀資料

//第一種

//char buf[1024] = ;

//while ( ifs >> buf )

//將ifs中的字元放入buf字元陣列中

//

//第二種

//char buf[1024] = ;

//while (ifs.getline(buf, sizeof(buf)))

//

//第三種

string

buf;

while

(getline(ifs, buf))

//第四種

//不太推薦乙個乙個讀

//char c;

//while ( (c = ifs.get()) != eof )

//eof end of file

//

//5、關閉檔案

ifs.close();

}int

main()

5.2 二進位制檔案

以二進位制的方式對檔案進行讀寫操作,開啟方式要指定為ios::binary

5.2.1 寫檔案

二進位制方式寫檔案主要利用流物件呼叫成員函式write

函式原型:ostream& write(const char * buffer, int len);

引數解釋:字元指標buffer指向記憶體中一段儲存空間。len是讀寫的位元組數

#includeusing

namespace

std;

#include

//標頭檔案包含

//二進位制檔案 寫檔案

class

person

;void

test1()

; ofs.write((

const

char*)&p, sizeof(person)); //

&p 對p取位址,然後強轉為(const char*),因為.write()第乙個引數型別為const char*

//5、關閉檔案

ofs.close();

}int

main()

總結:檔案輸出流物件可以通過write函式,以二進位制的方式寫資料

5.2.2 讀檔案

二進位制方式讀檔案主要利用流物件呼叫成員函式read

函式原型:istream& read(char *buffer,int len);

引數解釋:字元指標buffer指向記憶體中一段儲存空間。len是讀寫的位元組數

#include#include

using

namespace

std;

#include

//標頭檔案包含

//二進位制檔案 讀檔案

class

person

;void

test1()

//4、讀檔案

person p;

ifs.read((

char*)&p, sizeof

(person));

cout

<< "

姓名:"

<< p.m_name << "

年齡:

"<< p.m_age <

//5、關閉檔案

ifs.close();

}int

main()

C 核心程式設計 5 檔案操作

5.2 二進位制檔案 程式執行時產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放 通過檔案可以將資料持久化 c 中對檔案操作需要包含標頭檔案 fstream 檔案型別分為兩種 文字檔案 檔案以文字的ascii碼形式儲存在計算機中 二進位制檔案 檔案以文字的二進位制形式儲存在計算機中,使用者一般不...

C 核心程式設計 05檔案操作

程式執行時產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放 通過檔案可以將資料持久化 c 中對檔案操作需要包含標頭檔案 fstream 檔案型別分為兩種 文字檔案 檔案以文字的ascii碼形式儲存在計算機中 二進位制檔案 檔案以文字的二進位制形式儲存在計算機中,使用者一般不能直接讀懂它們 操作檔...

C 核心篇 5 檔案讀寫

00x1 概述 程式執行時產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放。通過檔案可以實現資料持久化 c 中對檔案的操作需要包含標頭檔案 檔案型別分為兩種 二進位制檔案 檔案以二進位制形式儲存在計算機中 檔案操作分為三種 00x2 文字檔案 寫檔案包含標頭檔案 include 建立流物件 of...