#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void removeLinesStartWith(char ch, char file[]) {
char filetmp[32] = "tmp.txt";
FILE* fp = fopen(file, "r");
FILE* fptmp = fopen(filetmp, "w");
if (fp == NULL || fptmp == NULL) {
printf("Error open file\n");
exit(EXIT_FAILURE);
}
char s[128];
int i = 1;
while ((fgets(s, 128, fp)) != NULL) {
if (s[0] != ch)
fputs(s, fptmp);
i++;
}
fclose(fp);
fclose(fptmp);
remove(file);
rename(filetmp, file);
}
void readFile(char file[]) {
FILE* fp = fopen(file, "r");
char ch;
while ((ch = fgetc(fp)) != EOF)
putchar(ch);
fclose(fp);
}
int main()
{
char file[100] = "d:\\data.txt";
readFile(file);
removeLinesStartWith('[', file);
puts("\n--------------");
readFile(file);
return 0;
}
/*
run:
/*
run:
c c++ c#
[abc]
java python
[xyz]
javascript php
--------------
c c++ c#
java python
javascript php
*/