(四)按数据块读写文件
1.数据块写函数 fwrite()
功能:把数据块(多个数据)写入目标文件中。
fwrite()函数的一般调用形式为:
fwrite(数据块存放的起始地址,数据块中每个数据的字节数,数据块中数据的个数,指向目标文件的指针); //演示1
函数操作成功时,返回值为实际写入数据项的个数,如果操作失败,返回值0。
该函数以二进制形式对文件进行操作,而不局限于文本文件。
2.数据块读函数 fread()
功能:从目标文件中读取数据块(多个数据)。
fread()函数的一般调用形式为:
fread(要存放数据块的起始地址,每个数据的字节数,数据块中数据的个数,指向目标文件的指针); //演示2
函数操作成功时,返回值为实际读取到的数据项个数,如果不成功,或读到文件末尾返回0。
//演示1:用fwrite()函数把数组a中的10个整数以二进制形式写入文件test.dat中。
#include<stdio.h>
int main()
{
int a[10] = { 1,2,3,4,5,6,7,8,9,0 };
FILE* fp;
errno_t err;
if ((err = fopen_s(&fp, "test.dat", "wb")) != 0) //以二进制写方式打开文件
{
printf("文件打开失败.\n");
return (-1);
}
//将数组首地址a开始的10个sizeof(int)字节大