中易网

C++:fstream有类似C语言中fread()和fwrite这种进行块读写的函数么,我想要从文件中读取块

答案:3  悬赏:20  
解决时间 2021-02-08 04:05
C++:fstream有类似C语言中fread()和fwrite这种进行块读写的函数么,我想要从文件中读取块
最佳答案
有啊.
要读写二进制数据块,使用成员函数read()和write()成员函数,它们原型如下:
read(unsigned char *buf,int num);
write(const unsigned char *buf,int num);

  read()从文件中读取 num 个字符到 buf 指向的缓存中,如果在还未读入 num 个字符时就到了文件尾,可以用成员函数 int gcount();来取得实际读取的字符数;而 write() 从buf 指向的缓存写 num 个字符到文件中,值得注意的是缓存的类型是 unsigned char *,有时可能需要类型转换。
例:
unsigned char str1[]="I Love You";
int n[5];
ifstream in("xxx.xxx");
ofstream out("yyy.yyy");
out.write(str1,strlen(str1));//把字符串str1全部写到yyy.yyy中
in.read((unsigned char*)n,sizeof(n));//从xxx.xxx中读取指定个整数,注意类型转换
in.close();out.close();
全部回答
你好! read/write 打字不易,采纳哦!
要读写二进制数据块,使用成员函数read()和write()成员函数,它们原型如下: read(unsigned char *buf,int num); write(const unsigned char *buf,int num);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有没有都市里人有动漫人物能力的小说求最好是
哈密道/河北路(路口)这个地址在什么地方,我
word文档没有响应!怎么办?
56个民族的习俗
菲律宾航空公司的国际航班怎么样
高密市欧泰家具有限公司这个地址在什么地方,
长隆乐园的门票多少钱?是不是包含所有项目
20多岁了想从0基础自学画画素描和速写,在哪
郑州站东广场-地下停车场北入口地址在哪,我
尼康J1相机显示黑屏什么原因
除湿机多久才能见效
玲珑精品我想知道这个在什么地方
远古文(最好是耽美的)!
《兽人之水晶》第二部 谁有吗 能给发给我吗.
金源超市我想知道这个在什么地方
推荐资讯
青龙供电营业所地址有知道的么?有点事想过去
福建宁德农村商业银行业务大楼地址在哪,我要
我在个人煤矿受了工伤,可矿上不给申请工伤认
剩小米饭能吃吗
永泰中医这个地址在什么地方,我要处理点事
电影《长城》好看吗
烟台日报传媒集团小报童发行有限公司蓬莱发行
唱盘县的歌有"多彩盘县是我家、丹霞山上、坡
迈克和杨林有些书的英文
美食美客自助火锅烤肉在什么地方啊,我要过去
升级是选小米路由HD还是华硕AC88U
闷热的近意词是啥意思
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?