在C++中,我们通常不直接处理像C语言中那样的FILE结构体和文件指针。相反,C++使用流(stream)的概念来处理输入/输出,包括文件输入/输出。std::ifstream
(输入文件流)和std::ofstream
(输出文件流)是用于文件操作的类。
在C++中,文件I/O(输入/输出)是通过标准库中的 <fstream>
(文件流)头文件来处理的。该文件库提供了一组类来支持文件的读取和写入操作。以下是基于C++对文件I/O和磁盘文件分类的详细解释:
1.1 文件I/O
在C++中,文件I/O操作主要使用文件流对象,如 ifstream(输入文件流)
用于读取文件,ofstream(输出文件流)
用于写入文件,以及 fstream(文件流)
用于同时读写文件。
1.1.1、使用 ifstream
对象读取文件
打开文件:使用 ifstream
对象,并调用其 open
方法来打开文件。
使用std::ifstream
类来读取文件是一种常见且方便的方法。std::ifstream对象
并不直接调用open
方法,因为构造函数本身就接受一个文件名作为参数来打开文件。但是,如果你已经创建了一个std::ifstream
对象并且想要稍后打开文件,你可以使用其open
成员函数。
以下是一个简单的示例,展示了如何使用std::ifstream的构造函数
或open成员函数
来打开文件:
使用构造函数直接打开文件:
cpp
#include <fstream>
#include <iostream>
#include <string>
int main() {
std::ifstream inputFile("example.txt"); // 使用构造函数打开文件
// 检查文件是否成功打开
if (!inputFile) {
std::cerr <<