C++如何遍历存放在文件中的对象?

z46988646 2012-06-11 10:39:25
我写的有一个程序,用fstream类的write函数将对象写入到文件中。
格式为:

class CA{
int a;
};
///////////////////
CA a;
fstream ff("path.txt",ios::app|ios::out);
ff.write((char*)&a,sizeof(CA));
ff.close();

大概就是这样。
现在就是有一个文件,里面存放有数量未知的对象,请问我该如何去做才能实现遍历其中所有对象呢?
...全文
150 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
csucdl 2012-06-11
  • 打赏
  • 举报
回复
最好还是要事先知道有多少个对象, 要不你用文件大小除以对象大小
z46988646 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

就你这个对象,你可以直接read进来,提前开辟好容纳CA对象的内存即可。
[/Quote]
这是一个对象,直接read,我就是不知道如果有多个对象,read()的指针如何移动到下一个对象。
关于read()函数的指针移动以及返回值我在网上没查到。。
z46988646 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

wirte时都没用二进制吧
[/Quote]
没有。
我知道读取应该用fstream里的read()函数,可是不知道如何才能控制read()函数使其能遍历文件中保存的所有对象。
luciferisnotsatan 2012-06-11
  • 打赏
  • 举报
回复
wirte时都没用二进制吧
qq120848369 2012-06-11
  • 打赏
  • 举报
回复
就你这个对象,你可以直接read进来,提前开辟好容纳CA对象的内存即可。
pathuang68 2012-06-11
  • 打赏
  • 举报
回复
参考:
把结构用二进制方式写入文件,并读出来

其中的结构,可以是类。

64,682

社区成员

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

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