亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++之文件IO

發布時間:2020-07-05 07:46:06 來源:網絡 閱讀:981 作者:101MHz 欄目:移動開發

    C++中,輸入輸出采用流來進行,例如iostream庫中的 cin 和 cout 。對文件進行讀寫操作也使用流。可以將文件與流關聯起來,然后對文件進行操作。要將流與文件關聯起來,必須像聲明變量那樣聲明流,流是一種特殊的變量,稱為“對象”,要對流進行處理,也必須使用專門處理流的函數才行。

    C++提供的輸入文件流(input file stream)變量的類名為 ifstream 。輸出文件流(output file stream)變量的類名為 ofstream 。這兩個類型都在 fstream 庫中定義,因此,使用它們需要包含該 fstream 庫。ifstream 和 ofstream 均為類,必須聲明類變量才可進行相關操作,例如:

  ifstream in_stream; //聲明一個 ifstream 類型的流變量,名為 in_stream 。        
  ofstream out_stream; //聲明一個 ofstream 類型的流變量,名為 out_stream 。

    流變量要想對文件進行操作,必須連接到一個文件,也成為打開文件,需要用到 ifstream 類中的一個名為 open 的成員函數進行操作。例如:想要將輸入流 in_stream 與文件 1.txt 連接,要執行如下操作:

    in_stream.open("1.txt");

    進行該操作的前提是 1.txt 文件與該代碼文件在同一目錄下,如果不是在同一目錄,需要加上絕對路徑。

    open函數可能因為很多原因而調用失敗。例如:打開一個不存在的文件,open調用就會失敗,這時候,程序有可能不會報錯,但程序將執行我們非預期的操作。因此,要在執行文件打開操作之后,檢測open調用是否成功。可以用名為 fail 的成員函數測試一個流操作是否失敗。ifstream 和 ofstream 類都有名為 fail 的成員函數,該函數不取任何參數,返回一個 bool 類型的值,操作成功,返回假;操作失敗,返回真。例如:要使用 fail 函數測試 open 調用是否成功,可以如下操作:    

    in_stream.open("1.txt");        
    if ( in_stream.fail() ){        
        cout << "File Open Failed." << endl;        
        exit(1);    
    }

    在實際編程中,open 函數調用結束,一定要立即調用 fail 函數進行測試。

    程序中的 exit 函數在 cstdlib 庫中定義,因此,要使用該函數,需要在文件頂部包含 cstdlib 庫。exit 函數參數為 0 時,表示程序正常運行結束。參數為 1 時,表示程序因為錯誤而退出運行。雖然程序中用 0 還是 1 都沒有影響,但還是建議大家遵守上述約定。 

文件打開成功之后,就可以像 cin 那樣來進行讀取了,例如,文件 1.txt 中的內容為:

    200 5 10

    可以通過如下代碼將3個數字讀取到num1, num2, num3中:

    in_stream >> num1 >> num2 >> num3;

    要向文件寫入內容,也需要首先打開文件,這時,用的流變量是 ofstream 而非 ifstream。在文件未被打開的情況下,通過如下代碼可像 cout 那樣方便的將內容寫入文件 2.txt 中:

    ofstream out_stream;    
    out_stream.open("2.txt");    
    out_stream << 100 << endl          
          << 200 << endl          
          << 300 << endl;

    注意:如果代碼目錄下沒有 2.txt 這個文件,該段程序會創建一個名為 2.txt 的文件,然后寫入數據。如果目錄下原先就有一個 2.txt 的文件,用此種方式打開文件之后,會覆蓋掉原先數據。如果想要在當前已存在文件的末尾追加數據,可采用如下方式打開文件:

    out_stream.open("1.txt", ios::app);

    open 函數中第二個實參:ios::app 是一個特殊常量,在 iostream 庫中定義,要使用它,要包含 iostream庫。

    通過一個例子,來集中使用文件輸入輸出流的操作。功能為:從 1.txt 文件中讀取3個數據,將它們的和存放到 2.txt 當中。

C++之文件IO


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜新市| 宁德市| 海林市| 汝南县| 宣威市| 镇赉县| 巴东县| 灵璧县| 延长县| 永丰县| 丘北县| 沭阳县| 文山县| 鹿泉市| 民丰县| 磐安县| 陵水| 桃园市| 永修县| 岚皋县| 皮山县| 嘉善县| 阳谷县| 甘谷县| 乐都县| 镇坪县| 汨罗市| 从化市| 宜昌市| 长沙市| 平阳县| 贞丰县| 涟源市| 望都县| 横山县| 山东省| 满城县| 上蔡县| 辽阳市| 武胜县| 西城区|