【c语言】文件的读写
文件读写使用二进制读写比较方便,分别使用fread和fwrite函数进行。
一、函数定义
以二进制形式读取文件,从stream流中读取内容,读到ptr指向的空间中,读取size大小的count个内存单元。
返回值为读取到的字符个数。
以二进制形式读取文件,从stream流开始,,从ptr指向的空间开始,写入size大小的count个内存单元。
二、代码示例
// 读文件
void ReadContact(Contact* pc)
{FILE* pf = fopen("Contact.dat", "rb");if (pf == NULL){perror("ReadContact::fopen:");return -1;}PeoInfo tmp = { 0 };while (fread(&tmp, sizeof(PeoInfo), 1, pf)){AddContact(pc, tmp.name, tmp.tel, tmp.sex);}fclose(pf);
}
// 保存到文件
void SaveContact(Contact* pc)
{FILE* pf = fopen("Contact.dat", "wb");if (pf == NULL){perror("SaveContact::fopen:");return -1;}for (int i = 0; i < pc->length; i++){fwrite(pc->arr+i, sizeof(PeoInfo), 1, pf);}fclose(pf);
}