c++ ofstream 和ifstream 读写二进制文件的简单操作

主要使用ofstream 和ifstream 的技术 纯c++实现

有时间感觉使用qt的文件操作没有c++的适用 特别是遇到中文或者\0 的特殊字符时 还是c++有效

void WriteFile(const string & sFilePath, const string & sContent)

{

ofstream out(sFilePath.c_str(), ios::binary);

if (out.is_open())

{

out.write(sContent.c_str(), sContent.size());

out.close();

}

return;

}

void ReadFile(const string & sFile, string & sContent)

{

ifstream in(sFile, ios::binary);

if (!in.is_open())

{

cout << "Error opening file"; exit(1);

}

in.seekg(0, ios::end);

int isize = in.tellg();

in.seekg(0, ios::beg);

unsigned char *pBuf = new unsigned char[isize];

in.read((char *)pBuf, isize);

copy(pBuf, pBuf + isize, back_inserter(sContent));

if (nullptr != pBuf)

{

delete [] pBuf;

pBuf = nullptr;

}

return;

}

相关推荐
「QT(C++)开发工程师」9 分钟前
【Qt Creator 15.0.1 安装指南】
开发语言·qt
网小鱼的学习笔记11 分钟前
leetcode283移动零元素
java·开发语言·算法
一点多余.13 分钟前
java中的单例模式
java·开发语言·单例模式
xyq202415 分钟前
NumPy 创建数组
开发语言
紫陌涵光17 分钟前
538. 把二叉搜索树转换为累加树
c++·算法·leetcode
lly20240618 分钟前
Ruby 类和对象
开发语言
Dovis(誓平步青云)18 分钟前
《C/C+++ Boost 轻量级搜索引擎实战:架构流程、技术栈与工程落地指南——构造正/倒排索引(中篇)》
开发语言·c++·搜索引擎
Autumn729919 分钟前
【系统重装】PYTHON 入门——速通版
开发语言·python·conda·cuda
keyborad pianist21 分钟前
Java应用基础 Day3
java·开发语言
yi.Ist21 分钟前
牛客寒假训练营3
c++·学习·算法