#include <stdio.h>
#include <stdlib.h>
#define TRUE 1
#define ERROR 0
#define MAX 30
typedef struct{
char xuanxiang1[30],xuanxiang2[30],xuanxiang3[30],xuanxiang4[30],Timu[150];
char result;
}TestNode;//类型,类似于int
TestNode Wenti[MAX];//定义结构体数组
bool SaveTitle(int N) //把结构体数组保存到文件"liuyunyun"中,如成功保存返回TRUE,否则返回ERROR
{
int i;
FILE *fp;
if((fp=fopen(“liuyunyun”,“wb”))==NULL) return ERROR;//wb:只写,打开二进制文件,w:只写,打开一个文件
for(i=0;i<N;i++)
fwrite(&Wenti[i],sizeof(TestNode),1,fp);//把数据项写到指定文件,fwrite一般形式fwrite(buffer,size,count,fp),buffer是一个指针,输出数据的地址,size是要读写的字节数,count是要进行读写多少个size字节的数据项,fp是文件型指针
fclose(fp);
return TRUE;
}
bool ReadTitle(int &N) //从文件读出结构体数组的内容,如成功读取返回TRUE,否则返回ERROR
{
FILE *fp;
int i=0;
if((fp=fopen(“liuyunyun”,“rb”))==NULL) return ERROR;
while(!feof(fp))// 用feof检测文件是否结束,如果结束,返回正确,feof为0,结束
{
fread(&Wenti[i],sizeof(TestNode),1,fp);//从指定文件中读取数据项
i++;
}
N=i-1;
return TRUE;