使用std::ofstream以std::ios::app模式打开文件,可将新内容追加到末尾而不覆盖原有数据。示例代码展示如何写入字符串并检查文件是否成功打开,适用于日志记录等场景。

在C++中向文件末尾追加内容,关键在于使用std::ofstream并以追加模式打开文件。这样可以确保原有内容不被覆盖,新写入的数据会自动添加到文件末尾。
使用ofstream以追加模式写入
通过指定
std::ios::app标志,可以让输出流每次写入时都定位到文件末尾:示例代码:
#include
#include
int main() {
std::ofstream file("example.txt", std::ios::app);
if (file.is_open()) {
file << "这是追加的内容\n";
file.close();
} else {
std::cout << "无法打开文件!\n";
}
return 0;
}
如果example.txt原本有内容,新行会加在最后;如果没有,会创建新文件并写入。
立即学习“C++免费学习笔记(深入)”;
每次写入前检查是否成功打开
文件操作可能因权限、路径等问题失败,建议始终检查流状态:
- 使用
is_open()判断文件是否成功打开 - 写入后可调用
!file或file.fail()检测是否有错误 - 及时调用
close()释放资源
追加多行或动态内容
追加不限于单行字符串,可以写变量、循环内容等:
std::string user_input = "用户输入的内容";
file << "[LOG] " << user_input << "\n";
适合用于日志记录、数据累积等场景。
基本上就这些。只要打开文件时加上std::ios::app,后续的操作都会自动追加到末尾,简单可靠。











