ifstream
是C++标准库中的一个输入文件流类,用于从文件中读取数据。它提供了一系列函数和操作符,用于打开文件、读取数据、操作文件指针等。下面是ifstream
的用法详解。
ifstream
类的头文件:
#include <fstream>
创建ifstream
对象:
ifstream inputFile;
打开文件:
inputFile.open("filename");
或者
inputFile.open("filename", ios::in);
这里的"filename"
是要读取的文件名。
检查文件是否成功打开:
if (inputFile.is_open()) {
// 文件打开成功
} else {
// 文件打开失败
}
从文件中读取数据:
int data;
inputFile >> data;
或者
string line;
getline(inputFile, line);
第一种用法可以用于读取整数、浮点数等基本类型数据,第二种用法可以用于读取字符串。
关闭文件:
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
可以方便地从文件中读取数据。