C++文件处理

? 新建文件

//这是要操作的文件名称
string str_filename = "E:/data/t/haha.txt";
//创建一个流对象 o 就是从这个流对象出去, 出到哪里, 当然是我们要建立的文件
ofstream ofs;
//out会覆盖
ofs.open(str_filename, ios::out);
ofs << "我创建了一个文件, 向里面写入内容1" << endl;

? 删除文件

//里面填要删除的文件名
remove(str_filename.c_str());

? 查询文件是否存在
编辑器抽风, 我这里看着是好的, 以后再改了

//创建一个stat
struct stat buffer;
//这里要调用c_tr()转下型
if(stat(str_filename.c_str(), &buffer) == 0) cout<<"这个文件存在"<<endl;
else cout<<"这个文件不存在"<<endl;
  • 写成函数

    inline bool if_the_file_exists(const std::string& name) {
    	struct stat buffer;
    	return (stat(name.c_str(), &buffer) == 0);
    }
    

? btw 查看文件内容

ifstream ifs;
ifs.open(str_filename, ios::in);
char ch;
while (ifs >> noskipws >> ch)
cout << ch;

? 修改文件数据

  • 修改文件名

    //老名字
    string old_name = "xxx";	
    //新名字
    string new_name = "zzz";
    //改名
    if (!rename(old_name.c_str(), new_name.c_str()))
    {
        cout << "改名成功" << endl;
    }
    
  • 覆写(见新建文件)

  • 追加内容

//创建一个流对象 o 就是从这个流对象出去, 出到哪里, 当然是我们要建立的文件
ofstream ofs2;
//app是追加
ofs2.open(str_filename, ios::app);
ofs2 << "我创建了一个文件, 向里面写入内容2" << endl;
ofs2.close();

? 复制文件(待续)

? 加密解密

部分内容参考这个网站

原文链接:https://www.cnblogs.com/Long23/p/17311350.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++文件处理 - Python技术站

(0)
上一篇 2023年4月17日
下一篇 2023年4月17日

相关文章

  • 【Visual Leak Detector】配置项 TraceInternalFrames

    说明 使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇介绍 VLD 配置文件中配置项 TraceInternalFrames 的使用方法。同系列文章目录可见 《内存泄漏检测工具》目录 目录 说明 1. 配置文件使用说明 2. 设置是否跟踪内部堆栈的调用 2.1 测试代码 2.2 TraceInternalFrames = no 时的输出 2.3 …

    C++ 2023年4月18日
    00
  • 高效c语言1快速入门

    本章将开发你的第一个C语言程序:传统的 “Hello, world!”程序。然后讨论一些编辑器和编译器的选项,并阐述移植性问题。 Hello, world! #include <stdio.h> #include <stdlib.h> int main(void) { puts(“Hello, world!”); return EXI…

    C++ 2023年5月10日
    00
  • QML和QT

    推荐一些学习qml教程 Qt官方的QML教程: https://doc.qt.io/qt-5/qtqml-index.html这是一个由Qt官方提供的完整的QML教程,包含了所有基本知识和高级语法。 QML中文网:http://www.qmlcn.com/这是一个非常不错的中文QML学习网站,提供了丰富的例子和教程,而且有很多QML爱好者在这里交流。 《Qt…

    C++ 2023年4月18日
    00
  • Linux/Ubuntu系统下使用VS Code配置C/C++开发环境

        在Ubuntu下,使用VS Code来编辑代码或进行开发非常方便,下面记录一下如何配置gcc/g++编译器和GDB调试工具。 准备工作: 1. 安装VS Code,过程略。 2. 为VS Code安装C/C++ Extension Pack 扩展组件,其他插件会附带安装 3. Ubuntu系统自带g++和gdb,查看一下 配置环境: VS Code …

    C++ 2023年5月7日
    00
  • 【Visual Leak Detector】核心源码剖析(VLD 2.5.1)

    说明 使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇对 VLD 2.5.1 源码做内存泄漏检测的思路进行剖析。同系列文章目录可见 《内存泄漏检测工具》目录 目录 说明 1. 源码获取 2. 源码文件概览 3. 源码剖析 3.1 通过 inline hook 修补 LdrpCallInitRoutine 3.2 通过 IAT hook 替换内存操…

    C++ 2023年5月11日
    00
  • 08、【算例】openfoam溃坝

    7.1 溃坝 官网目录:$FOAM_TUTORIALS/multiphase/interFoam/laminar/damBreak 7.1.1 介绍 本案例使用interFoam两相算法,基于流体体积分数(VOF)法,每个网格中的相体积分数(alpha)通过求解一个组分运输方程确定。物理属性基于这个相分数通过加权平均计算。 7.1.2 网格生成 blockM…

    C++ 2023年4月18日
    00
  • C++:explicit关键字

    C++中的explicit关键字只能用于修饰只有一个参数的类构造函数,它的作用是表明该构造函数是显示的,而非隐式的,跟它相对应的另一个关键字是implicit,意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式)。 那么显示声明的构造函数和隐式声明的有什么区别呢? 来看下面的例子: class CxString // 没有使用explicit关…

    C++ 2023年4月18日
    00
  • 【Visual Leak Detector】配置项 ReportTo

    说明 使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇介绍 VLD 配置文件中配置项 ReportTo 的使用方法。同系列文章目录可见 《内存泄漏检测工具》目录 目录 说明 1. 配置文件使用说明 2. 设置报告输出的位置 2.1 测试代码 2.2 ReportTo = debugger 时的输出 2.3 ReportTo = file 时的输出…

    C++ 2023年4月18日
    00
合作推广
合作推广
分享本页
返回顶部