文件读写fread和fwrite

FDUshiyan 2017-09-08 04:04:45
[size=14px]各位大神,我有一个二进制的文件,现在用fread()按照一定的格式读出来了,再用fwrite()来把它保存在新的文件中,打开发现保存的数据还是二进制,现在我的问题是:
(1)我想把数据保存为十进制,fwrite()可不可以指定保存的数据格式,使用fprintf()函数是可以指定我要保存的数据的格式的;
(2)我把数据保存为txt,csv文件打开的时候都没有问题,但是保存为.xls(excle)文件的时候就会出错,提示文件格式或文件扩展名无效,请问这是啥原因啊,如果我想把数据保存到excle里面应该怎么解决?
(3)在保存数据的时候我能不能指定保存数据的位置格式,比如说我现在有100个数据需要保存,保存在csv中是保存为1列,我想把他保存成10行,每行10个数,请问这个应该怎么做?

谢谢大家。
...全文
138 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
paschen 版主 2017-09-09
  • 打赏
  • 举报
回复
1、内存中的数据全是二进制,你如果是要保存成文本文件,需要写入数字对应的字符串

2、保存成EXCEL文件你需要按相应的文件格式去存储,而不只是后缀为XLS就行
Really_want 2017-09-08
  • 打赏
  • 举报
回复
fwrite函数就是按二进制写文件的
Really_want 2017-09-08
  • 打赏
  • 举报
回复
打开发现保存的数据还是二进制? 你用什么程序打开的?又是通过什么途径发现的? 文本查看程序(记事本)?二进制查看程序? 满满的都是问号啊

64,637

社区成员

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

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