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;

}

相关推荐
码不停蹄Zzz14 分钟前
C语言【结构体值传递问题】
c语言·开发语言
AMoon丶16 分钟前
Golang--多种数据结构详解
linux·c语言·开发语言·数据结构·c++·后端·golang
wearegogog12319 分钟前
C# Modbus 协议实现
开发语言·c#
紫郢剑侠28 分钟前
【C语言编程gcc@Kylin | 麒麟 】5:获取系统启动时间
c语言·开发语言·kylin·gcc·麒麟操作系统
王老师青少年编程36 分钟前
2026年3月GESP真题及题解(C++一级):数字替换
c++·题解·真题·gesp·一级·2026年3月·数字替换
晓晓hh1 小时前
JavaSe学习——基础
java·开发语言·学习
清水白石0081 小时前
Python 内存陷阱深度解析——浅拷贝、深拷贝与对象复制的正确姿势
开发语言·python
phltxy1 小时前
算法刷题|模拟思想高频题全解(Java版)
java·开发语言·算法
愚者游世1 小时前
template学习大纲
开发语言·c++·程序人生·面试·visual studio
阿里嘎多学长1 小时前
2026-03-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管