使用std::ofstream可向文件写入内容,需包含<fstream>头文件;2. 构造ofstream对象打开文件,用<<操作符写入数据,完成后调用close()关闭;3. 指定ios::app模式可在文件末尾追加内容而不覆盖;4. 支持写入字符串、数字等类型,操作方式与cout一致;5. 始终检查is_open()确保文件成功打开,避免写入失败。

在c++中向文件写入内容,主要使用标准库中的fstream头文件提供的类。最常用的是std::ofstream(output file stream),专门用于文件写入操作。下面详细介绍基本用法和常见场景。
1. 包含头文件并引入命名空间
要进行文件操作,首先要包含<fstream>头文件,并建议使用std命名空间,简化代码书写:
#include <fstream>
#include <iostream>
using Namespace std;
2. 使用 ofstream 打开并写入文件
std::ofstream对象用于创建或打开一个文件,并将数据写入其中。如果文件不存在,会自动创建;如果已存在,默认会覆盖原内容。
示例:向文件写入一行文本
立即学习“C++免费学习笔记(深入)”;
ofstream file(“example.txt”);
if (file.is_open()) {
file << “Hello, this is a line of text.” << endl;
file.close();
} else {
cout << “Unable to open file!” << endl;
}
说明:
– 构造ofstream对象时传入文件名即可打开文件。
– 使用<<操作符像cout一样写入内容。
– 写完后调用close()关闭文件,释放资源。
3. 追加模式写入(不覆盖原内容)
如果不想覆盖原有内容,而是追加到文件末尾,可以在打开文件时指定ios::app模式:
ofstream file(“example.txt”, ios::app);
if (file.is_open()) {
file << “This line is appended.” << endl;
file.close();
}
这样每次运行程序都会在文件末尾添加新内容,而不是清空重写。
4. 写入多种类型的数据
C++的文件流支持写入字符串、数字、变量等,操作方式与cout一致:
int age = 25;
double score = 98.5;
String name = “Alice”;
ofstream out(“data.txt”);
if (out.is_open()) {
out << “Name: ” << name << endl;
out << “Age: ” << age << endl;
out << “Score: ” << score << endl;
out.close();
}
生成的文件内容为:
Name: Alice
Age: 25
Score: 98.5
基本上就这些。掌握ofstream的打开、写入和关闭流程,就能轻松实现C++中的文件写入功能。注意检查文件是否成功打开,避免因路径或权限问题导致写入失败。


