求助,C++如何在写入文件时,将写入的int型数据保存为4个字节

IT保安 2015-06-21 11:27:31
bool updateCurSheet(int iOffset,const char *fileName)											//更新表头文件
{
ofstream outFile;
outFile.open(fileName,ios_base::out | ios::app | ios::binary);
if(outFile.is_open())
{
outFile << iOffset;
outFile.close();
return true;
}
return false;
}


我的目的是将int型的数据,存入到文件中,这个int数据是用来指示一个字符串在文件中的偏移量的。
按我的代码,写入数据后,查看,该int型数据仅仅是一个字节来保存了,没有用4个字节。

当前的这个int 值 = 0,刚写入第一个,因此偏移=0;请问,如何让这个Int数据在文件中按4字节存放呢?

...全文
346 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
out<<(char) (0x000000ff & num); out<<(char) ((0x0000ff00 & num) >> 8); out<<(char) ((0x00ff0000 & num) >> 16); out<<(char) ((0xff000000 & num) >> 24); in.read((char*)&num, 4);
mewiteor 2015-06-22
  • 打赏
  • 举报
回复
outfile.write(&iOffset,sizeof iOffset);

64,645

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧