【发布时间】:2017-03-19 19:44:51
【问题描述】:
我正在尝试从文件中读取这样的矩阵
1 2 3 5 6
4 5 3 5 6
之后,我更改其中一个并希望将其写入同一个文件。 但它附加到文件的末尾;在不使用 fseek() 的情况下是否有解决方案?我想像每次使用文件一样使用文件,它从头开始。
in main(){
FILE* in; int s[2][5];
in=fopen("input","r+");
read(in,s);
s[1][0]=7;
write(in,s);
}
void read(FILE* in, int s[][5]) {
int i, j, x;
for (i = 0; i<2; ++i) {
for (j = 0; j<5; ++j) {
fscanf(file_pointer, "%d", &x);
s[i][j] = x;
}
}
}
void write(FILE* out;int s[][5]){
int i, j, x;
for (i = 0; i<2; ++i) {
for (j = 0; j<5; ++j) {
fscanf(file_pointer, "%d", &x);
s[i][j] = x;
}
}
}
【问题讨论】:
-
打开文件
r,然后在read()之后关闭并在write之前使用w重新打开。这样,您只需覆盖现有文件。
标签: c file url-rewriting append