在c程序中替换文本文件中的一行[关闭]

问题描述 投票:0回答:1

下面的代码说明了如何替换文本文件的行。

这是文件处理问题。

这可以通过创建另一个新的文本文件并将文本文件中的内容复制到这个新创建的文本文件来完成。

这里使用fgets()函数来读取。

然后使用fprintf()函数将其写入新文件中。

这里的文本文件是“1.txt” 新替换的文件是“1new.txt”

c file text replace flat
1个回答
-1
投票
#include<stdio.h>

void main(){
FILE* f = fopen("1.txt","r");
FILE* fn = fopen("1new.txt","w");
int x=1,k=0;
char a[100];

printf("Enter which line to replace: ");
scanf("%d",&k);
printf("Write the line to replace: ");
scanf("%s",a);

char c[100],s[100]="";
while(fgets(c,100,f)){
    if (x==k){
        fprintf(fn, "%s\n",a);
        x++;
        continue;
    }
    fprintf(fn,"%s", c);
    x++;
}
fclose(f);
fclose(fn);

}

© www.soinside.com 2019 - 2024. All rights reserved.