温馨提示×

c++输入文件流ifstream用法详解

小亿
166
2024-01-02 16:11:31
栏目: 编程语言

ifstream是C++标准库中的一个输入文件流类,用于从文件中读取数据。它提供了一系列函数和操作符,用于打开文件、读取数据、操作文件指针等。下面是ifstream的用法详解。

  1. ifstream类的头文件: #include <fstream>

  2. 创建ifstream对象: ifstream inputFile;

  3. 打开文件: inputFile.open("filename"); 或者 inputFile.open("filename", ios::in); 这里的"filename"是要读取的文件名。

  4. 检查文件是否成功打开:

    if (inputFile.is_open()) {
        // 文件打开成功
    } else {
        // 文件打开失败
    }
    
  5. 从文件中读取数据:

    int data;
    inputFile >> data;
    

    或者

    string line;
    getline(inputFile, line);
    

    第一种用法可以用于读取整数、浮点数等基本类型数据,第二种用法可以用于读取字符串。

  6. 关闭文件: 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可以方便地从文件中读取数据。

0