我只是在学习与FILE
s一起工作。我的问题是这样的:当 我想读,是由fopen("example.dat", "ab")
打开一个二进制文件,它显示是这样的:读取由fopen(“ab”)打开的二进制文件(add,binary)
但是当我通过fopen("example.dat", "wb")
打开文件,它的工作原理!
这里是我的测试程序:
到文件上写:
#include <stdio.h>
void main() {
int i = 0;
FILE *save = fopen("save.dat", "wb");
char str[5][40];
while (i < 5) {
gets(str[i]);
fwrite(str[i], sizeof(char), 40, save);
i++;
}
}
阅读:
#include <stdio.h>
void main() {
char str2[100][400];
int i = 0;
FILE *load = fopen("save.dat", "rb");
if (!load) {
printf("cant open file!");
return;
}
fread(str2[i], sizeof(char), 40, load);
while (!feof(load)) {
puts(str2[i]);
printf("\n");
i++;
fread(str2[i], sizeof(char), 40, load);
}
}
我需要"ab"
,因为它是关于保存游戏信息,并将其关闭程序后不应删除或再次运行。
和我的英语很抱歉;)
使用,可以显示二进制内容的编辑。 –
@ user3121023我试过删除上次保存的文件上的数据 –
heeyyyy whyy感叹!!!我只是一个可怜的工程师学生 –