fwrite(buffer, size, count,fp):以二进制的形式向指定的文件中写入若干数据项(由count决定),返回实际写入的数据项数目,各参数含义如下:

buffer:一个存储区的起始地址,以该地址开始的存储区的数据即是保存到文件中的数据,可以是数组或指针类型;

size:单个数据项的大小(单位:字节);

count:数据项数量;

fp:FILE类型指针,该指针对应的文件即是数据保存的“目的地”;

#include <stdio.h>
#include <stdlib.h>int main(){struct Student{char name [10];int num;int age;char addr [30];} stud [10];FILE * output  = fopen("D:\\stud.dat","wb");//生成的stud.dat文件无法用记事本打开,打开后显示“乱码”。if(output == NULL){printf("无法打开文件");exit(0);}for(int i=0;i<10;++i){scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].addr);fwrite(&stud[i],sizeof(struct Student),1,output);}fclose(output);return 0;
}

fread(buffer, size, count,fp):以二进制的形式从指定的文件中读取若干数据项(由count决定),调用成功返回实际读取到的数据项个数(小于或等于count),不成功或读到文件末尾返回 0,各参数含义如下:

buffer:一个存储区的起始地址,以该地址开始的存储区用于保存从文件中读取出来的数据,可以是数组或指针类型;

size:单个数据项的大小(单位:字节);

count:数据项数量;

fp:FILE类型指针,该指针对应的文件即是数据的“来源地”;

#include <stdio.h>
#include <stdlib.h>int main(){struct Student{char name [10];int num;int age;char addr [30];} stud [10];FILE * input = fopen("D:\\stud.dat","rb");if(input == NULL){printf("无法打开文件");exit(0);}for(int i=0;i<10;++i){fread(&stud[i],sizeof(struct Student),1/*读取1个数据项*/,input);printf("%s %d %d %s\n",stud[i].name,stud[i].num,stud[i].age,stud[i].addr);}fclose(input);return 0;
}
#include <stdio.h>
#include <stdlib.h>int main(){struct Student{char name [10];int num;int age;char addr [30];} stud [5];FILE * input = fopen("D:\\stud.dat","rb");if(input == NULL){printf("无法打开文件");exit(0);}int validCount;//实际读取多少数据项while((validCount = fread(stud,sizeof(struct Student),5/*最多读取5个数据项*/,input))!=0){for(int i=0;i<validCount;++i){printf("%s %d %d %s\n",stud[i].name,stud[i].num,stud[i].age,stud[i].addr);}}fclose(input);return 0;
}

C语言二进制方式读写文件数据相关推荐

  1. python读取二进制文件_python读取二进制流 Python二进制方式读写文件 - 电脑常识 - 服务器之家...

    python读取二进制流 Python二进制方式读写文件 发布时间:2017-03-18 来源:服务器之家 这两天用Python解析ELF二进制文件,遇到了不少问题,总结整理如下,以便加深对Pytho ...

  2. c语言怎样用格式化文件存储,如何用格式化的方式读写文件

    对格式会来说,C语言的格式读写文件是很有要求的,在前面我们已经讲解了如何去进行字符的输入输出,但事实真相,数据的类型是很丰富的,而且大家已经熟悉了用printf和scanf函数进行格式化的输入输出,他 ...

  3. c语言以只写方式打开二进制文件,C语言采用文本方式和二进制方式打开文件的区别分析...

    稍微了解C程序设计的人都知道,文本文件和二进制文件在计算机上面都是以0,1存储的,那么两者怎么还存在差别呢?对于编程人员来说,文本文件和二进制文件就是一个声明,指明了你应该以什么方式(文本方式/二进制 ...

  4. BinaryReader 、BinaryWriter是方便用二进制方式读写int,double,string之类的数据

    BinaryWriter类:MSDN以二进制形式将基元类型写入流,并支持用特定的编码写入字符串. 这个MSDN的解释,是不是说BinaryWriter类是将数据以二进制的形式写入文件,在文件中显示的是 ...

  5. Linux内核中读写文件数据的方法

    Linux内核中读写文件数据的方法     有时候需要在Linuxkernel--大多是在需要调试的驱动程序--中读写文件数据.在kernel中操作文件没有标准库可用,需要利用kernel的一些函数, ...

  6. 【转】 Linux内核中读写文件数据的方法--不错

    原文网址:http://blog.csdn.net/tommy_wxie/article/details/8193954 Linux内核中读写文件数据的方法     有时候需要在Linuxkernel ...

  7. 以二进制方式打开文件并显示

    以二进制方式打开文件并显示 不管是二进制文件还是文本文件,它们都是以二进制数据的方式存储的.对于文本文件来说,它所存放的每一个字节都可以转换为一个可读的字符:而以二进制方式读取文件,只是将数据在内存中 ...

  8. python二进制方式读取文件,并将读取出的数据以txt的格式保存

    以二进制方式读取文件夹下所有二进制文件,将读取出的二进制数据转换为浮点数并以txt格式保存,代码如下: import os import struct import numpy as npdef re ...

  9. Python二进制方式切分文件并还原

    Python二进制方式均等切分文件并且合并还原 场景 切分原理图 代码实现 切分方式(图左) 切分方式(图右) 场景 文件传输大小限制时,需要将文件切小,分别发送,合并还原 文件发送限制(比如:破解软 ...

最新文章

  1. 21. 将报警信息实时发送至邮箱
  2. [原]我装Solaris的艰苦经历
  3. WiresShark之抓http包如何倒出图片格式的对象
  4. JVM架构和GC垃圾回收机制--面试
  5. pandas手册_Github标星6000+ 这可能是最全的机器学习工具手册
  6. arm集群服务器_什么样的ARM处理器及内存配置适合用来开发ARM集群服务器?
  7. 日本区块链项目Jasmy与索尼VAIO联合发售笔记本电脑
  8. 在anaconda python开发套件下进行opencv的安装
  9. 怎样在 linux 系统下增加一块硬盘
  10. 002-用python设计的第一个游戏
  11. 不允许有匹配 [xX][mM][lL] 的处理指令目标
  12. 打地鼠小游戏(Laya.box)
  13. 笔记本计算机回收站在哪里,电脑回收站不见了怎么办 四种方法教你快速解决问题【图文教程】...
  14. 我把淘宝当副业,一年全款买了房:你看不起的行业,真的很赚钱
  15. java配置dsf,基于Spring-DM实现分布式服务框架(DSF)(二)
  16. mysql 触发器 同步表数据 统计表数据
  17. 计算机没有游戏客户端程序咋办,电脑开始菜单游戏不见了怎么办
  18. 成都月嫂提醒你,宝宝的疫苗接种时间
  19. linux常用命令(六)命令执行顺序控制与管道
  20. 快看!!!北极点的气温在零度以上!比平常高了30度!!!!!!

热门文章

  1. C语言之C语言小括号表达式,C语言逗号运算符,C语言等号运算符
  2. 《机器学习技法》---核型SVM
  3. 学透JSON.stringify
  4. java案例--利用抽象类模拟加油站消费
  5. zheng的开源项目启动碰到的报错
  6. 2022年中央空调行业竞争分析
  7. 武汉新时标文化传媒有限公司短视频剪辑突出重围
  8. Adding a new Log Message
  9. 【LaTex】在插入的图片下方加下标和描述
  10. C++字符串完全指南(转)