话不多说,道不同不相为谋
#include <iostream>
#include <cstdio>
using namespace std;
int main() {
char fileName[] = "D:\\CluDemo\\Filedele\\dele.txt";
FILE *fp = fopen(fileName,"r");
FILE *tmp = tmpfile();
char ch;
int t = 0;
while((ch=fgetc(fp)) != EOF) {
if(ch == '\n' && !t) //如果每行的第一个字符是换行符,就跳过这一行
continue;
if(ch == '\n' && t) { //如果一行的第一个字符不是换行符就将这一行的内容输入到临时文件
t = 0;
fputc(ch,tmp);
}
else {
fputc(ch,tmp);
t = 1;
}
}
rewind(tmp); //重定位临时文件的文件指针到开头
fclose(fp);
fopen(fileName,"w"); //重写以写方式打开源文件
while((ch=fgetc(tmp)) != EOF) { //将临时文件里的内容复制到源文件
fputc(ch,fp);
}
fclose(tmp); //分别关闭两个文件
fclose(fp);
return 0;
}