当前位置: 首页 > web >正文

C++文件操作--1 文本文件操作

  • C++可以通过文件实现数据持久化
  • C++对文件的操作需要包含头文件 <fstream>

文件分为:

  1. 文本文件
  2. 二进制文件

操作文件的三大类型:

  1. 写操作类--ofstream
  2. 读操作类--ifstream
  3. 读写操作类--fstream

 

1.1 写文本文件

(1)包含头文件

#include<fstream>

(2)创建流对象

ofstream ofs;

(3)打开文件

ofs.open("文件路径", 打开方式);
  • 文件打开方式:

  • 文件打开方式配合使用:

ios::in | ios::binary

(4)写入数据

ofs << "写入数据";

(5)关闭文件

ofs.close();

1.2 读文本文件

(1)包含头文件

#include<fstream>

(2)创建流对象

ifstream ifs;

(3)打开文件并判断文件是否打开成功

ifs.open("文件路径", 打开方式);
if(!ifs.is_open()) // 判断文件是否打开成功
{std::cout << "文件打开失败!" << std::endl;return 0;
}

(4)读取数据

  • 全部读取

char buf[1024] = {0};
while(ifs >> buf){}
  • 按行读取(成员函数,读取到字符数组)

char buf[1024] = {0};
while(ifs.getline(buf, sizeof(buf))){}
  • 按行读取(全局函数,读取到字符串)

string buf;
while(getline(ifs, buf)){}
  • 按字符读取

char buf[1024] = {0};
while((c = ifs.get()) != EOF){std::cout << c;}

(5)关闭文件

ifs.close();

http://www.xdnf.cn/news/6567.html

相关文章:

  • MYSQL之基本查询(CURD)
  • 基于javaweb的JSP+Servlet家政服务系统设计与实现(源码+文档+部署讲解)
  • c++,windows,多线程编程详细介绍
  • 机器视觉对位手机中框点胶的应用
  • Oracle统计信息收集时的锁持有阶段
  • 全面指南:Xinference大模型推理框架的部署与使用
  • 平替BioLegend品牌-FITC 标记 CD11c 抗体 [N418],精准识别小鼠树突细胞
  • [Harmony]大文件持久化
  • Spring-messaging-MessageHandler接口实现类ServiceActivatingHandler
  • Pangle出海指南:如何实现ROI最大化?
  • Spring Boot多数据源配置的陷阱与终极解决方案
  • 在 Vue 中使用 Three.js 渲染 GLB 格式模型
  • antd 主题色定制
  • C++(12):using声明
  • 智能包装机控制终端技术方案:基于EFISH-SCB-RK3588/SAIL-RK3588的全场景国产化替代解析
  • Console Importer浏览器插件的编译 及 制作成.crx浏览器插件的步骤
  • electron进程通信
  • 128.在 Vue 3 中使用 OpenLayers 实现绘制矩形截图并保存地图区域
  • 关于xammp数据库打开不了,但是日志没错误的问题解决以及其数据库的备份
  • 如何利用 Python 爬虫按关键字搜索京东商品:实战指南
  • Docker 安装 MySQL8
  • OpenCV 图像直方图:从原理剖析到实战应用
  • linux系统服务
  • Qt信号槽机制与UI设计完全指南:从基础原理到实战应用
  • 【笔试训练】简单写词|dd爱框框|除2!
  • Cursor无法使用C/C++调试的解决办法
  • Ubuntu使用Docker搭建SonarQube企业版(含破解方法)
  • Hugging Face 中 LeRobot 使用的入门指南
  • LangChain4j +DeepSeek大模型应用开发——10 检索增强生成 RAG
  • Ubuntu下配置VScode出现#include错误请更新includePath的解决方法