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

C++学习, 文件

C++标准库提供了丰富的功能来处理文件,这些功能主要通过<fstream>头文件中的类来实现,比如ifstream(用于从文件读取数据)、ofstream(用于向文件写入数据)和fstream(同时支持读写操作)。

打开文件,在从文件读取信息或者向文件写入信息之前,ofstream 和 fstream 对象都可以用来打开文件进行写操作。只需要打开文件进行读操作,则使用 ifstream 对象。open() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。

open函数:
void open(const char *filename, ios::openmode mode);

open() 成员函数,第一参数要打开文件名称和位置,第二个参数文件被打开的模式。

模式标志描述
ios::app追加模式。所有写入都追加到文件末尾。
ios::ate文件打开后定位到文件末尾。
ios::in打开文件用于读取。
ios::out打开文件用于写入。
ios::trunc

如果该文件已经存在,其内容将在打开文件之前被截断,即把文件长度设为 0。

打开文件示例:

使用ifstream打开文件进行读取

#include <fstream>  
#include <iostream>  
#include <string>   
int main() {  
    std::ifstream file("test.txt"); // 在构造函数中打开文件  
  
    if (file.is_open()) {  
        std::string line;  
        while (getline(file, line)) { // 循环读取文件的每一行  
            std::cout << line << '\n';  
        }  
        file.close(); // 关闭文件  
    } else {  
        std::cout << "Unable to open file";  
    }  
  
    return 0;  
}

使用ofstream打开文件进行写入

 <fstream>  
#include <iostream>  
  
int main() {  
    std::ofstream file("output.txt"); // 创建并打开文件用于写入  
  
    if (file.is_open()) {  
        file << "Hello, World!\n"; // 写入一行文本  
        file.close(); // 关闭文件  
    } else {  
        std::cout << "Unable to open file";  
    }  
  
    return 0;  
}

关闭文件,程序终止前,需要主动关闭所有打开的文件 C++ 程序终止时,会自动关闭刷新所有流,释放所有分配的内存,并关闭所有打开的文件。close() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。

close函数:
void close();

 


http://www.mrgr.cn/news/29337.html

相关文章:

  • Python 占位语句 pass
  • 将Docker中nginx静态资源目录映射到宿主机的某个目录及配置文件映射到宿主机
  • Vue开发风格
  • 【go从零单排】通道select、通道timeout、Non-Blocking Channel Operations非阻塞通道操作
  • Go:文件输入输出以及json解析
  • 【element-tiptap】Tiptap编辑器介绍
  • 5分钟部署Prometheus+Grafana批量监控Linux服务器
  • 性能测试的五大目标
  • 力扣300-最长递增子序列(Java详细题解)
  • 家居小程序有什么用?
  • CefSharp_Vue交互(Element UI)_WinFormWeb应用(4)--- 最小化最大化关闭窗体交互(含示例代码)
  • 7 种有助于压缩图像的最佳图像压缩工具
  • 推动公平学习与身份归一化的视网膜神经疾病数据集
  • 1035. 不相交的线
  • 光控资本:股票委托额是什么?股票委托额和股票成交量有什么区别?
  • C++学习, 接口
  • 【机器学习(七)】分类和回归任务-K-近邻 (KNN)算法-Sentosa_DSML社区版
  • 检查dll依赖运行情况:dependency walker(depends)下载链接
  • OpenFeign接口调用日志
  • WordPress建站钩子函数及使用
  • 2024/9/18 英语每日一段
  • 探索iPhone一键删除重复照片的方法
  • 【STM32系统】基于STM32设计的DAC输出电压与ADC检测电压系统(简易万用表,检测电压电流)——文末工程资料下载
  • 阻止冒泡事件
  • Qt开发技巧(四)“tr“使用,时间类使用,Qt容器取值,类对象的删除,QPainter画家类,QString的转换,用好 QVariant类型
  • PDF标准详解(五)——图形状态