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;

}

相关推荐
lsx20240613 分钟前
传输对象模式
开发语言
ch.ju15 分钟前
Java Programming Chapter 4——Member method
java·开发语言
艾莉丝努力练剑17 分钟前
【Linux网络】Linux 网络编程:HTTP(五)HTTP收尾,从Cookie会话保持、抓包问题到 HTTPS 初识
linux·运维·服务器·网络·c++
Shadow(⊙o⊙)18 分钟前
前缀和:和可被K整除的子数组(normal)
数据结构·c++·算法
笨蛋不要掉眼泪18 分钟前
Java并发编程:ReentrantLock与AQS原理剖析
java·开发语言·并发
念何架构之路24 分钟前
Go依赖管理
开发语言·后端·golang
liudanzhengxi25 分钟前
CUDA转OpenCL:跨平台内核迁移实战
开发语言
吃好睡好便好28 分钟前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化
努力努力再努力wz29 分钟前
【Redis入门系列】:Redis 内部编码机制与 String 深度解析:SDS 底层实现、三种编码与核心命令详解
c语言·开发语言·数据结构·数据库·c++·redis·缓存
必胜刻30 分钟前
Go 调用Coze工作流实现 AI 游戏生成
开发语言·ai·golang·gin