叶伏天牛逼 发表于 2020-12-1 11:29:32

求助大佬,这个文件打开一直是乱码,是我读写文件的代码写错了吗,求更正

void IO_ReadInfo()

{

   FILE *fp;

   int i;

   if ((fp=fopen("D:/Database.txt","rb"))==NULL)

   {

         printf("不能打开文件!\n");

         return;

   }

   if (fread(&num,sizeof(int),1,fp)!=1)

   {

         num=-1;

   }

   else

   {

         for(i=0;i<num;i++)

         {

            fread(&students,sizeof(struct Student),1,fp);

         }

   }

   fclose(fp);

}



/*将学生信息写入文件*/

void IO_WriteInfo()

{

   FILE *fp;

   int i;

   if ((fp=fopen("D:/Database.txt","wb"))==NULL)

   {

         printf("不能打开文件!\n");

         return;

   }

   if (fwrite(&num,sizeof(int),1,fp)!=1)

   {

         printf("写入文件错误!\n");

   }

   for (i=0;i<num;i++)

   {

         if (fwrite(&students,sizeof(struct Student),1,fp)!=1)

         {

            printf("写入文件错误!\n");

         }

   }   

   fclose(fp);

}

风过无痕1989 发表于 2020-12-1 14:21:17

其他的有没有错误,我现在没法用编译器帮你查,但有一个明显的错误,你改了再试试:
if ((fp=fopen("D:/Database.txt","rb"))==NULL)    // 反斜杠是错误的,要用 \

叶伏天牛逼 发表于 2020-12-1 23:28:47

风过无痕1989 发表于 2020-12-1 14:21
其他的有没有错误,我现在没法用编译器帮你查,但有一个明显的错误,你改了再试试:
if ((fp=fopen("D:/D ...

好的
页: [1]
查看完整版本: 求助大佬,这个文件打开一直是乱码,是我读写文件的代码写错了吗,求更正