合肥响应式网站设计,莱芜在线话题莱芜拉呱,深圳住房和建设局网站办事跟踪,word上下页内容不连续在 C 中#xff0c;文件处理是一个常见且重要的任务。标准库提供了三种主要的文件流类来处理文件输入和输出#xff1a;fstream、ifstream 和 ofstream。这些类都在 fstream 头文件中定义。
一、fstream 类
fstream 是文件流类的基类#xff0c;既可以用于读操作 中文件处理是一个常见且重要的任务。标准库提供了三种主要的文件流类来处理文件输入和输出fstream、ifstream 和 ofstream。这些类都在 fstream 头文件中定义。
一、fstream 类
fstream 是文件流类的基类既可以用于读操作也可以用于写操作。它结合了 ifstream 和 ofstream 的功能。如果你需要对同一个文件进行读写操作fstream 是最佳选择。
1.1 基本用法
#include iostream
#include fstream
#include stringint main() {std::fstream file;// 打开文件file.open(example.txt, std::ios::in | std::ios::out | std::ios::app);if (!file) {std::cerr Failed to open file. std::endl;return 1;}// 写入文件file Hello, fstream! std::endl;// 读取文件std::string line;file.seekg(0); // 移动读指针到文件开始while (getline(file, line)) {std::cout line std::endl;}// 关闭文件file.close();return 0;
}1.2 打开模式
fstream 支持多种打开模式可以组合使用
std::ios::in以读模式打开文件std::ios::out以写模式打开文件std::ios::app以追加模式打开文件std::ios::ate打开文件并定位到文件末尾std::ios::trunc如果文件存在则清空文件std::ios::binary以二进制模式打开文件
二、ifstream 类
ifstream 是输入文件流类专门用于文件读操作。它继承自 istream并添加了文件输入操作的功能。
2.1 基本用法
#include iostream
#include fstream
#include stringint main() {std::ifstream file(example.txt);if (!file) {std::cerr Failed to open file. std::endl;return 1;}std::string line;while (getline(file, line)) {std::cout line std::endl;}file.close();return 0;
}2.2 打开模式
std::ios::in以读模式打开文件默认模式std::ios::binary以二进制模式打开文件
三、ofstream 类
ofstream 是输出文件流类专门用于文件写操作。它继承自 ostream并添加了文件输出操作的功能。
3.1 基本用法
#include iostream
#include fstreamint main() {std::ofstream file(example.txt);if (!file) {std::cerr Failed to open file. std::endl;return 1;}file Hello, ofstream! std::endl;file.close();return 0;
}3.2 打开模式
std::ios::out以写模式打开文件默认模式std::ios::app以追加模式打开文件std::ios::ate打开文件并定位到文件末尾std::ios::trunc如果文件存在则清空文件std::ios::binary以二进制模式打开文件
四、总结
fstream用于同时读写文件。ifstream用于读取文件。ofstream用于写入文件。
正确选择和使用这些文件流类可以有效地处理各种文件输入输出操作。掌握打开模式以及流的基本操作是进行文件处理的基础。在实际开发中根据具体需求选择合适的文件流类可以提高代码的可读性和维护性。