C++の入力ファイルストリームifstreamの使い方を詳しく説明します。
ifstreamは、C++標準ライブラリに含まれる入力ファイルストリームクラスで、ファイルからデータを読み取るために使用されます。ファイルを開く、データを読み取る、ファイルポインタを操作するなど、さまざまな関数や演算子が提供されています。ifstreamの使用方法について詳細に説明します。
- ifstreamクラスのヘッダーファイル:
#include - ifstream オブジェクトを作成してください:
ifstream inputFile; - ファイルを開く際には、以下のように書きます:
inputFile.open(“filename”);
または
inputFile.open(“filename”, ios::in);
ここでの”filename”は読み込むファイルの名前です。 - ファイルが正常に開かれたかを確認します。
- もし(inputFile.is_open()){
//ファイルを開けた
} else {
//ファイルを開けなかった
} - ファイルからデータを読み込む:
- int data;
inputFile >> data;データ型 data;
inputFile >> data; - この場合
- 文字列 line;
getline(inputFile, line); - 第1つの使い方は整数や浮動小数点数などの基本的なデータを読み取るために使用することができ、第2つの使い方は文字列を読み取るために使用することができます。
- ファイルを閉じる:
inputFile.close();
ifstreamの基本的な使い方については以上で述べました。以下には一般的に使われる操作関数をいくつか紹介します。
- good()関数:ファイルが正常に開かれているかを確認します。
- eof()関数:ファイルの終わりに達しているかどうかを確認します。
- fail():読み込みエラーをチェックします。
- clear():エラー状態フラグをクリアする。
- ignore(n, delim):n文字飛ばすか、定界文字delimに達するまで無視する。
サンプルコード:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
ifstream inputFile;
inputFile.open("input.txt");
if (inputFile.is_open()) {
int data;
while (inputFile >> data) {
cout << data << " ";
}
inputFile.close();
} else {
cout << "File open failed." << endl;
}
return 0;
}
ifstreamの基本的な使い方と一部のよく使われる操作関数が説明されています。ifstreamを使うと、ファイルからデータを簡単に読み込むことができます。