Bonjour,
Je suis entrain de coder un serveur et j'ai un petit problème lorsque le client me demande la liste des fichiers disponible car je n'arrive à afficher que la dernière ligne du fichier(qui contient la liste de tout les fichiers).
Voici la partie de mon code concerné :
Je pense que l'erreur vient lorsque j’envoie une chaîne, je pense quelle ne part pas tant que la boucle n'est pas fini.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 else if (strcmp (data, "LIST") == 0) { FILE* fichier = NULL; char text[50]; system("ls > shell.txt"); fichier = fopen("shell.txt", "r"); if (fichier != NULL) { while (fgets(text, sizeof text, fichier) != NULL); { char text0[100] = "FICH "; strcat(text0, text); send (p_cli->sock, text0, strlen (text0), 0); fflush (stdout); } fclose(fichier); } char const response5[] = "ENDL\n"; send (p_cli->sock, response5, strlen (response5), 0); }
Merci d'avance pour votre aide.
Partager