📅  最后修改于: 2023-12-03 15:08:35.176000             🧑  作者: Mango
在 C++ 中,我们可以使用标准库中的 fstream
类来进行文件的读写操作,其中通过 ofstream
类实现文件的写操作,通过 ifstream
类实现文件的读操作,通过 fstream
类则既可实现读操作,也可实现写操作。
在进行文件写操作之前,需要先打开文件。可以使用 ofstream
的构造函数,传入文件路径及打开模式,来创建一个文件输出流。
#include <fstream>
std::ofstream outFile; // 声明输出文件流
outFile.open("data.txt", std::ios::out); // 打开文件
其中,文件路径可以是一个绝对路径,也可以是相对路径。打开模式可以指定为以下几种:
std::ios::out
- 文件原有内容将被删除,只能进行写操作。若文件不存在则创建该文件。 std::ios::app
- 文件原有内容不会被删除,新内容会添加到文件末尾。 std::ios::trunc
- 如果文件存在,在打开文件前先清空文件内容。 std::ios::binary
- 以二进制方式打开文件。 打开文件后,我们就可以向文件中写入数据了。可以使用 ofstream
的 <<
运算符,将要写入的内容传入输出流中。
outFile << "Hello World!\n";
outFile << 42 << std::endl;
文件写入完成后,需要关闭文件流,以释放资源。
outFile.close();
下面是一个简单的将字符串写入到文件的完整代码示例:
#include <iostream>
#include <fstream>
int main()
{
std::ofstream outFile("data.txt", std::ios::out); // 打开文件
if (!outFile.is_open()) // 判断文件是否成功打开
{
std::cerr << "Failed to open file." << std::endl;
return -1;
}
std::string text("Hello World!");
outFile << text << std::endl; // 写入内容
outFile.close(); // 关闭文件
return 0;
}
通过 ofstream
类,我们可以非常方便地将数据写入到文件中。同时我们还需要注意,写入操作结束后,需要调用输出流的 close()
方法,以确保文件被正常关闭,防止资源泄露。
更多信息,可以参考 C++ 标准库文档:http://www.cplusplus.com/reference/fstream/