Il y a actuellement 711 visiteurs
Dimanche 22 Décembre 2024
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

Lecture dans un fichier en C

Besoin d'aide pour configurer un serveur ? Vous souhaitez obtenir des conseils pour référencer votre site ? Un petit souci pour accéder à votre FTP ? Des soucis de programmation en PHP / ASP / HTML / XHTML / XML / XSLT / CSS / ReactJS / AngularJS / VueJS / CGI / PERL / C / MySQL / PostgreSQL ??? Nous avons peut-être la solution dans ce forum ...

Lecture dans un fichier en C

Message le 10 Déc 2009 19:00

Bonjour,
je voulais savoir si il était possible de lire mot par mot un fichier en C ?
Et si il était possible de concaténer le caractère lu par fgetc avec une chaine de caractère car le problème que je rencontre est que fgetc lit un entier.
merci
marin.benjamin
Visiteur Confirmé
Visiteur Confirmé
 
Messages: 29
Inscription: 27 Nov 2009 18:10
 


Re: Lecture dans un fichier en C

Message le 10 Déc 2009 19:04

Oui, c'est tout à fait possible, grâce à fgetc (lit un caractère), fgets (lit une chaîne), ou fscanf (lit une chaîne formatée)...

La plus utile est à mon sens fgets, dont voici le prototype :
Code: Tout sélectionner
char* fgets(char* chaine, int nombreDeCaracteresALire, FILE* pointeurSurFichier);


Tu vois comment ouvrir et fermer un fichier en C ?
Avatar de l'utilisateur
H3bus
Moderateur
Moderateur
 
Messages: 12195
Inscription: 08 Avr 2008 15:13
Localisation: /home/h3bus
 

Re: Lecture dans un fichier en C

Message le 11 Déc 2009 11:30

Oui mais moi je veux lire mot par mot ou alors concaténer le caractère lu avec une chaine jusqu'à que l'on rencontre un espace.
Comment je peux faire ?
marin.benjamin
Visiteur Confirmé
Visiteur Confirmé
 
Messages: 29
Inscription: 27 Nov 2009 18:10
 

Re: Lecture dans un fichier en C

Message le 11 Déc 2009 15:18

marin.benjamin a écrit:Oui mais moi je veux lire mot par mot ou alors concaténer le caractère lu avec une chaine jusqu'à que l'on rencontre un espace

Tu fais une fonction pour cela. Genre :
Code: Tout sélectionner
char * lire-mot(FILE * fic)
{
char * chaine, c;

while (1)  {
c=fgetc(fic);
if (c==" ") return chaine; // espace, ça retourne le mot
chaine = strcat(chaine,c);  // concatenation de la chaine et du caractère
}
}

Mon code est assurément plein d'erreurs, initialisation, test de fin de fichier, etc... tu corriges et c'est bon.
Avatar de l'utilisateur
CaSa
PC-Infopraticien
PC-Infopraticien
 
Messages: 9048
Inscription: 13 Mai 2003 16:32
Localisation: Sisteron... et jamais loin d'une Debian
 

Re: Lecture dans un fichier en C

Message le 11 Déc 2009 16:54

CaSa a écrit:Mon code est assurément plein d'erreurs


En effet ! :wink:

marin.benjamin, donnes nous ton code, pour qu'on puisse t'indiquer tes erreurs ! :wink:
Avatar de l'utilisateur
H3bus
Moderateur
Moderateur
 
Messages: 12195
Inscription: 08 Avr 2008 15:13
Localisation: /home/h3bus
 

Re: Lecture dans un fichier en C

Message le 21 Déc 2009 19:10

Regarde ce bout de code, ça recherche un élément dans un fichier et renvoie un booléen.
à chaque tour de boucle le fscanf regarde la ligne suivante, compare le contenu de cette ligne avec le contenu recherché et renvoie true ou false

Code: Tout sélectionner
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXN 10
#define MAXC 100
typedef char t_nom_fichiers[MAXN];
typedef char t_chaines[MAXC];

// a={1,2,3}
//élément à rechercher : 2

int rech_fichier(t_nom_fichiers nom1){
   FILE *buff1;
   buff1=fopen(nom1,"r");
   t_chaines n1,n2="2"; //on recherche l'élément "2" du fichier;
   int trouve=0;
   while(1){
      fscanf(buff1,"%s \n",n1);
      if (strcmp(n1,n2) == 0) {
         printf("L'élément recherché a été trouvé !\n");
         trouve = 1;
         break;               
      }
      if (feof(buff1) && trouve==0){
         printf("L'élément recherché n'a pas été trouvé...\n");
         break;
      }
   }
   return trouve;
}

int main (void){
   rech_fichier("ega1.txt");
   return 0;
}
Avatar de l'utilisateur
Vianney85
Apprenti(e) Expert(e)
Apprenti(e) Expert(e)
 
Messages: 298
Inscription: 25 Avr 2005 22:47
 



Sujets similaires

Message Récupération fichier disparu sur Windows 10
Bonjour,En tapant dans Word, le texte a subitement dusparu. Impossible de le récupérer. Je l'avais déja partiellement enregistré la veille : impossible également derécupérer ce dernier. Que faire ? Toutce que j'ai pu récupérer c'est une partie du texte que j'avais enregistré préalablement dans Drive ...
Réponses: 1

Message Fichier HEVC
Bonjour jai transférer des fichiers photos et vidéo,de mon smartphone sur mon pc , les vidéo sont au format HEVC le problème quand je veux les lire sur le pcCa marche pas , il a pas les codecs Comment je peu faire pour les mettre sur le pc Merci
Réponses: 4

Message [Réglé] Fichier ADMINISTRATEUR n apparait plus
Bonjour,Je n'arrive plus à faire apparaître le fichier administrateurj'avais cliqué sur WINDOWS puis sur UTILISATEURensuite j'ai fait un clique droit sur ADMINISTRATEUR j'ai fait une erreur DANS PROPRIETE j'ai coché la case Cachédepuis le fichier est introuvableComment le récupérer merci
Réponses: 2

Message Renommer/supprimer des fichier avec caractères spéciaux
Salut,Sur un disque externe (NTFS) je me suis retrouvé avec des fichiers nommés sous la forme "10-XML::SAX::PurePerl" ou "Authen::SASL::Perl::GSSAPI.3pm.gz".Je veux virer tout ça, mais impossible car ils contiennent des ":".Très confiant, j'ai pris mon système préféré, ...
Réponses: 3

Message Lecture Vidéos
Bonjour J'ai un problème qui m'énerve beaucoup et que je n'arrive pas à résoudre J'ai Windows 10 et je navigue avec GoogleJe suis abonné à un site qui s'appelle QUORA et je reçois tous les jours des articles dans mon Gmail Cela fait plusieurs fois que je ne peux plus lire les vidéos !! - je ...
Réponses: 1

Message [Réglé] Aide pour analyse fichier FRST
Bonsoir,J'ai une fenêtre Powershell.exe qui s'ouvre et se ferme quelques minutes après le démarrage et ca n'était pas le cas avant.Mise à jour windows et mise à jour Nvidia récente.J'ai effectué une analyse et j'ai obtenu les fichiers texte suivants.Est ce que quelqu'un peut m'aider et me dire de qu ...
Réponses: 7

Message [Réglé] Streaming : Télécharger un fichier mp3
Bonjour à toutes et à tous,J'espère que ma question n'est pas hors charte. Si elle l'est, je vous prie de m'en excuser et vous pourrez supprimer mon topic.Je souhaiterais télécharger cette émission :Le problème étant réglé, le lien ayant perdu toute nécessité a été suppriméJ'ai cliqué droit sur la f ...
Réponses: 1


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 14 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.