1. 程式人生 > 實用技巧 >學習記錄--C++檔案讀入與儲存

學習記錄--C++檔案讀入與儲存

C++中對檔案操作需要包含標頭檔案<fstream>

操作檔案的三大類:1.ofstream寫操作  2.ifstream讀操作  3.fstream讀寫操作

一.寫檔案步驟

1.包含標頭檔案   #include<fstream>

2.建立流物件   ofstream ofs;

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

4.寫資料     ofs<<"寫入的資料";

5.關閉檔案    ofs.close();

檔案開啟方式:

開啟方式 解釋
ios::in 為讀檔案而開啟檔案
ios::out 為寫檔案而開啟檔案
ios::ate 初始位置:檔案尾
ios::app 追加方式寫檔案
ios::trunc 如果檔案存在先刪除,再建立
ios::binary 二進位制方式

檔案開啟方式可以配合使用:利用" | "操作符

Example:寫入檔案

#include<iostream>
#include<fstream>//所要包含的標頭檔案
using namespace std;
void test()
{
    //建立流物件
    ofstream ofs;
    //指定開啟的方式
    ofs.open("test.txt", ios::out);//沒有指定路徑,就會與專案路徑一致
    
//4.寫內容 ofs << "姓名:JIN" << endl; //5.關閉檔案 ofs.close(); } int main() { test(); system("pause"); return 0; }

讀檔案

1.包含標頭檔案    #include<fstream>

2.建立流物件    ifstream ifs;

3.開啟檔案並判斷檔案是否開啟成功

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

4.讀資料      四種方式讀資料

5.關閉檔案     ifs.close();

Example:讀入檔案

#include<iostream>
#include<fstream>
using namespace std;
//讀檔案
void test()
{
    //建立流物件
    ifstream ifs;
    ifs.open("test.txt", ios::in);//在程式碼儲存的同一個檔案路徑下
    //判斷是否開啟成功
    if (!ifs.is_open())
    {
        cout << "檔案開啟失敗!" << endl;
        //當這個檔案不存在或其它意外
    }
    //讀資料
    //第一種
    char ch[100] = { 0 };
    //如果文件中遇到一個換行符或者空格就會判斷下一個
    while (ifs >> ch)
    {
        cout << ch << endl;
    }
    ifs.close();
}

int main()
{
    test();
    system("pause");
    return 0;
}

第二種讀入方式

    //ifs的一個函式getline()可以讀取一行資料,需要傳入兩個引數
        //陣列首地址,儲存的位元組數在這裡指陣列提供的空間
    while (ifs.getline(ch, sizeof(ch)))
    {
        cout << ch << endl;
    }

第三種讀入方式

   //不使用字元陣列,而使用C++中的字串string  
       string ch;
    while (getline(ifs, ch))//使用函式getline
    {
        cout << ch << endl;
    }        

注意:一定要關閉檔案 !

Importance

員工管理系統使用讀寫檔案