0

0

C++如何读写文件_C++中使用fstream库进行文本文件输入输出

裘德小鎮的故事

裘德小鎮的故事

发布时间:2025-11-23 20:47:46

|

705人浏览过

|

来源于php中文网

原创

答案是使用fstream库中的ofstream、ifstream和fstream类操作文本文件。包含头文件后,用ofstream创建或写入文件,默认覆盖内容;若需追加,应使用ios::app模式打开文件。

c++如何读写文件_c++中使用fstream库进行文本文件输入输出

在C++中,读写文本文件最常用的方法是使用标准库中的 fstream。它提供了三个主要的类:ifstream(输入文件流)、ofstream(输出文件流)和fstream(文件流,支持读写)。这些类都定义在 头文件中。

包含头文件并打开文件

要使用文件操作功能,必须先包含 头文件。然后根据需求选择合适的类来打开文件。

例如,打开一个文本文件进行写入:

#include 
#include 
using namespace std;

int main() { ofstream outFile("example.txt"); if (!outFile) { cout << "无法打开文件用于写入!" << endl; return 1; } outFile << "Hello, C++ File I/O!" << endl; outFile.close(); return 0; }

上面代码创建了一个名为 example.txt 的文件,并写入一行文本。如果文件已存在,内容将被覆盖。若想追加内容,需以追加模式打开。

立即学习C++免费学习笔记(深入)”;

以不同模式打开文件

ofstream 默认以覆盖模式(trunc)打开文件。如果希望在文件末尾追加内容,可以使用 ios::app 模式:

ofstream outFile("example.txt", ios::app);
outFile << "这行将被追加到文件末尾。" << endl;
outFile.close();

常见打开模式包括:

mPDF
mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),包括边距、边框、填充、行高、背景颜色等。支持从右到左的语言,并自动检测文档中的RTL字符。转置表格、列表、文本

下载
  • ios::out - 输出(写入)模式
  • ios::in - 输入(读取)模式
  • ios::app - 追加模式,所有写入操作都在文件末尾
  • ios::ate - 打开后立即定位到文件末尾
  • ios::trunc - 若文件存在,则清空原内容(默认写入行为)

读取文本文件内容

使用 ifstream 类可以读取文件内容。下面是从文件逐行读取的示例:

ifstream inFile("example.txt");
if (!inFile) {
    cout << "无法打开文件用于读取!" << endl;
    return 1;
}

string line; while (getline(inFile, line)) { cout << line << endl; } inFile.close();

getline 函数能正确处理包含空格的行。也可以用 >> 操作符读取单个单词,但会跳过空白字符。

同时读写文件(fstream)

当需要对同一个文件进行读写操作时,可使用 fstream 类,并指定模式为 ios::in | ios::out:

fstream file("data.txt", ios::in | ios::out);
// 先读取现有内容
string content;
while (getline(file, content)) {
    cout << content << endl;
}
// 移动写指针到末尾再添加新内容
file << "新增的一行" << endl;
file.close();

注意:若文件不存在,这种打开方式不会自动创建,需先确保文件存在或额外处理。

基本上就这些。掌握 fstream 的基本用法后,就能轻松实现文本文件的读写操作。关键是记得检查文件是否成功打开,并在使用后调用 close() 关闭文件流。不复杂但容易忽略。

相关专题

更多
php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

1

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

15

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

4

2026.01.13

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

相关下载

更多

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
c语言项目php解释器源码分析探索
c语言项目php解释器源码分析探索

共7课时 | 0.4万人学习

ThinkPHP6.x API接口--十天技能课堂
ThinkPHP6.x API接口--十天技能课堂

共14课时 | 1.1万人学习

微信小程序开发--云开发篇
微信小程序开发--云开发篇

共15课时 | 0.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号