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;

}

相关推荐
whycthe1 分钟前
c++动态规划算法详解
c++·算法·动态规划
risc1234564 分钟前
channel.read(dest, channelPosition) 的读取大小限制
开发语言·python
清 澜5 分钟前
深度学习连续剧——手搓梯度下降法
c++·人工智能·面试·职场和发展·梯度
困死,根本不会25 分钟前
Qt Designer 基础操作学习笔记
开发语言·笔记·qt·学习·microsoft
李昊哲小课38 分钟前
Python 高级数据结构
开发语言·数据结构·python
愚者游世42 分钟前
<algorithm> 中 remove、remove_if、remove_copy、remove_copy_if 详解
c++·学习·程序人生·职场和发展·visual studio
MediaTea1 小时前
Python:词频统计流程及综合示例
开发语言·python
wregjru1 小时前
【读书笔记】Effective C++ 条款5~6:若不想使用编译器自动生成的函数,就该明确拒绝
java·开发语言
语戚1 小时前
从 JVM 底层拆解:i++、++i、i+=1、i=i+1 的实现逻辑与坑点
java·开发语言·jvm·面试·自增·指令·虚拟机