C++簡單的文件輸入輸出


   之前的博客里,已經說過如何從鍵盤讀入(cin),以及如何輸出到控制台(cout)。但是僅僅是這樣的輸入和輸出方式並不能滿足需求。更多的時候我們需要讀寫文件來獲得、存儲我們的數據。

概述

不管是讀文件還是寫文件,大體都可以分為5個步驟:

  1. 頭文件<fstream>

  2. 創建流

  3. 打開文件,使文件和流建立聯系

  4. 讀寫操作

  5. 關閉文件

解釋一下什么是流。

流,是一種抽象的概念。我們都知道,計算機的數據都是由0和1構成,不管是字符串,圖片還是音頻。當我們要將這些文件進行操作的時候,實際上操作的是這些0和1的數據。假如我想把一個文件從C盤剪切到D盤,那么我可以做一個這樣的類比:把文件的數據比作水。既然我想從一個地方把這些水運輸到另一個地方,那么我還要有一個管道,這個管道連接兩地(即C盤和D盤),水(0和1的數據流)在里面有方向地流動,最終全部抵達另一個地方。

參考博客:https://www.cnblogs.com/shitouer/archive/2012/12/19/2823641.html

寫文件

#include <iostream>

//1. 頭文件<fstream>
#include <fstream>

using namespace std;

int main()
{
    //2. 創建流
    ofstream output;
    
    //3. 打開文件,將流與文件相關聯,這里使用相對路徑
    output.open("number.txt");
    
    //4. 向文件寫入數據
    output << 1 << " " << 2 << " " << 3 << endl;
    
    //5. 關閉流
    output.close();
    
    return 0;
}

 運行結果如下:

 

 讀文件

#include <iostream>

//1. 頭文件<fstream>
#include <fstream>

using namespace std;

int main()
{
    //2. 創建流
    ifstream input;

    //3. 打開文件,將流與文件相關聯
    //2, 3步可以直接合並為:ifstream input("number.txt");
    input.open("number.txt");

    //4. 從文件讀入數據
    int number1, number2, number3;
    input >> number1 >> number2 >> number3;

    cout << "number1: " << number1 << endl;
    cout << "number2: " << number1 << endl;
    cout << "number3: " << number1 << endl;

    //5. 關閉流
    input.close();

    return 0;
}

運行結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM