Bonjour à tous,
j'ai une portion de code qui vise à afficher à l'écran, toutes les lignes d'un fichier qui répondent à deux conditions:
  • la chaîne lue ne contient pas à la chaîne appelée chaine

  • la chaîne lue n'est pas la chaîne vide

Ce que je traduis en test:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
  if (fgets(ligne_a_lire,TAILLE_BUFF,pfichier)!=NULL)
     {// une ligne existe
       if ((strstr(ligne_a_lire,chaine)==NULL)||(strcmp(ligne_a_lire,"")!=0)
       {         printf("\nligne lue: %s \n",ligne_a_lire);
       }//fin du if
Vu que ça ne donnait pas les bons résultats j'ai séparé mes deux conditions en deux tests.
Le premier test strstr se passe bien, mais le test de comparaison avec la chaîne vide reste infructueux.
"" est-il une mauvaise formulation d'une chaîne vide lue dans un fichier?
P.S: même résultat avec " \0".
Merci bien