使用文件操作函数打开文件,读取信息,重新写入并覆盖原文件,写的时候当遇到需要合并的两行时,忽略两之间的换行符。
例程:
#include
#include
#define K 5 //合并第六行第七行
FILE *p;//文件指针
int i,j;
char a[1000][1000];
int main(){
p = fopen("文件名称", "r");//第一个字符串是你文件路径,路径中的\要写成\\,文件名必须带后缀
for(i=0;fgets(s[i],1000,p)!=EOF;i++)//EOF为文件尾(end of file),读取文本中的数据
merge(); //合并操作
fclose(p);
p = fopen("文件名称", "w");//以写入方式重新打开
for(j=0;j fprintf(p,s[j]);
if(j!=K)fprintf(p,"\n"); //当不为合并行时,输出一个换行符
}
fclose(p)
return 0;
}
#include
#include
void main()
{
FILE *fp1,*fp2;
char line[1024];
int n=0;
fp1=fopen("file.txt","r");
if ( fp1==NULL ) return ;
fp2=fopen("file1.txt","w");
while( fgets(line,sizeof(line),fp1) )
{
n++;
if( n%2 )
line[strlen(line)-1]='\0'; //去掉回车
fprintf(fp2,"%s", line );
}
fclose(fp1);
fclose(fp2);
}
生成的file1.txt就是你想要文件
很简单。一个字符串一个字符的读取,遇到第奇数个换行符号,替换成空格,第偶数个跳过。然后保存以后重新打开就可以了。要求必须是你这样格式的文件