La fonction fscanf ou fgets
Résolu/Fermé
Pierre_Marie
Messages postés
2
Date d'inscription
mardi 31 mai 2016
Statut
Membre
Dernière intervention
31 mai 2016
-
31 mai 2016 à 03:30
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 31 mai 2016 à 21:57
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 31 mai 2016 à 21:57
A voir également:
- Fgets vs fscanf
- Udp vs tcp - Guide
- Dual core vs i5 ✓ - Forum Processeur
- Honor magic 5 pro vs s23 ultra - Accueil - Guide téléphones
- Psp 2000 vs 3000 ✓ - Forum PSP
- Ahci vs raid ✓ - Forum Disque dur / SSD
1 réponse
paly2
Messages postés
254
Date d'inscription
vendredi 29 août 2014
Statut
Membre
Dernière intervention
15 février 2018
25
Modifié par paly2 le 31/05/2016 à 14:56
Modifié par paly2 le 31/05/2016 à 14:56
Un exemple de code avec fgets:
C'est un code minimal, n'oublie pas de faire des vérifications pour les erreurs (retour de fopen, fgets et strtok notamment).
La curiosité est une excellente qualité !
#include <stdio.h> #include <string.h> // Ne pas oublier string.h pour strtok ! int main(void) { FILE* file = fopen("fichier", "r"); // On ouvre le fichier char ligne[1000] = ""; char* email = NULL; int i; fgets(ligne, 1000, file); // On récupère la ligne (ici ça sera la première, vu que c'est la première fois qu'on lit dans le fichier) strtok(ligne, ":"); // strtok retourne un pointeur sur le premier champ ... strtok(NULL, ":"); // ... puis sur le deuxième ... strtok(NULL, ":"); // ... puis sur le troisième ... email = strtok(NULL, ":"); // ... et enfin sur le quatrième (l'email). // Note: strtok a modifié la chaîne de caractère ligne. On ne peut plus l'utiliser. puts(email); // Affichage de l'e-mail fclose(file); // On ferme le fichier }
C'est un code minimal, n'oublie pas de faire des vérifications pour les erreurs (retour de fopen, fgets et strtok notamment).
La curiosité est une excellente qualité !
31 mai 2016 à 20:21
31 mai 2016 à 21:57
1ère ligne :
La fonction strtok() scinde une chaîne en une séquence d'éléments lexicaux. Lors du premier appel à strtok(), la chaîne à scinder doit être spécifiée dans str. Dans chaque appel ultérieur fait pour analyser la même chaîne, str doit être NULL.