Citation:
#include <stdio.h>
int main(void) {
FILE * fic;
char chaine1[] = "Première ligne\n";
char chaine2[] = "C'est un test de ligne de plus de 19 caractères";
char msg[20];
/* Ouverture d'un fichier */
fic = fopen("texte.txt", "w+");
/* Ecrire deux chaînes dans le fichier */
fwrite(chaine1, strlen(chaine1), 1, fic);
fwrite(chaine2, strlen(chaine2), 1, fic);
/* Se positionner au début du fichier */
fseek( fic, 0, SEEK_SET);
/* Lire une ligne dans le fichier, et l'afficher */
fgets( msg, sizeof(msg), fic);
printf( "%s", msg);
/* Lire l'autre ligne, et l'afficher */
fgets( msg, sizeof(msg), fic);
printf( "%s", msg);
/* Pointer au début du fichier, et faire un parcours complet */
printf("\nParcours complet:\n");
fseek( fic, 0, SEEK_SET);
/* Lire les chaînes de caractères */
while( fgets( msg, sizeof(msg), fic)!=NULL )
printf("%s", msg);
fclose(fic);
putchar('\n');
return 0;
}
Si je me souvien bien, sous win, un saut de ligne = 10,13 alors que sous linux c'est 10 en decimale ... Donc quand tu li t'es fichier : pense y!