1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
#include <stdio.h>
#include <string.h>
static void clean (char *s, FILE *fp)
{
char *p = strchr (s, '\n');
if (p != NULL)
{
*p = 0;
}
else
{
int c;
while ((c = fgetc(fp)) != '\n' && c != EOF)
{
}
}
}
static int lecture(char const filtre[])
{
int found = 0;
FILE *file = fopen("fichier.txt", "r");
if (file != NULL)
{
char list[1000];
while (fgets(list, sizeof list, file) != NULL)
{
clean(list, file);
printf("%s\n", list);
printf("%s\n", filtre);
{
char *pdest = strstr( list, filtre );
if ( pdest != NULL )
{
found = 1;
}
}
}
}
return found;
}
static void saisie(char *filtre, size_t size)
{
printf("Quel filtre voulez vous appliquer ?\n");
fgets(filtre, size, stdin);
clean(filtre, stdin);
}
int main(void)
{
int found;
do
{
char filtre[100];
saisie(filtre, sizeof filtre);
found = lecture(filtre);
}
while (!found);
return 0;
} |