Extraire des mots dans un fichier en c
Fermé
elwess20
Messages postés
26
Date d'inscription
samedi 1 janvier 2011
Statut
Membre
Dernière intervention
15 janvier 2011
-
Modifié par elwess20 le 12/01/2011 à 13:07
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 15 janv. 2011 à 11:09
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 15 janv. 2011 à 11:09
A voir également:
- Extraire des mots dans un fichier en c
- Téléchargez cette archive (dossier compressé). en extraire tous les fichiers dans un dossier local. quel fichier contient l’expression trouverpix ? ✓ - Forum Windows
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Fichier rar - Guide
- Dans le texte, un seul mot a réellement été écrit en lettres capitales (majuscules). quel est ce mot ? ✓ - Forum Word
- Extraire video youtube - Guide
4 réponses
scaravenger
Messages postés
2678
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
30 janvier 2015
625
12 janv. 2011 à 13:26
12 janv. 2011 à 13:26
strcpy(str, "si noir et blanc alors gris ");
ptr= strstr(str,"alors");// ptr pointe sur le "a" de "alors"
ptr= strstr(str," ");// ptr pointe sur l'espace après "alors"
ptr++;
ptr pointera sur ta couleur.
ptr= strstr(str,"alors");// ptr pointe sur le "a" de "alors"
ptr= strstr(str," ");// ptr pointe sur l'espace après "alors"
ptr++;
ptr pointera sur ta couleur.
elwess20
Messages postés
26
Date d'inscription
samedi 1 janvier 2011
Statut
Membre
Dernière intervention
15 janvier 2011
12 janv. 2011 à 13:35
12 janv. 2011 à 13:35
merci pour votre réponse,mais ce que je veut,c'est de parcourir le fichier jusqu'à arrivé au mot alors,et extrait le mot qui le reste de ligne.
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
12 janv. 2011 à 14:17
12 janv. 2011 à 14:17
ba là, 90% du travail est fait.
il te reste à mettre ton fichier dans une chaine de caractère et à récupérer le reste que tu veux (facile, tu as le pointeur du début)
il te reste à mettre ton fichier dans une chaine de caractère et à récupérer le reste que tu veux (facile, tu as le pointeur du début)
madinino
Messages postés
15
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
17 janvier 2011
12 janv. 2011 à 14:40
12 janv. 2011 à 14:40
Slt, la solution est interressante mais comment faire pour copier les caractere en partant de la ou a pointer le pointeur jusqu'à la fin de la chaine.
Est ce qu'il y a un moyen de traiter s'il y a un autre "alors"?
Est ce qu'il y a un moyen de traiter s'il y a un autre "alors"?
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
12 janv. 2011 à 16:19
12 janv. 2011 à 16:19
Est ce qu'il y a un moyen de traiter s'il y a un autre "alors"?
Il y a toujours un moyen...
Le problème c'est que la question n'est pas posée complètement. Là on récupère les les mots après alors, sans critère d'arret. Nous ne pouvons pas l'inventer pour vous.
Il y a toujours un moyen...
Le problème c'est que la question n'est pas posée complètement. Là on récupère les les mots après alors, sans critère d'arret. Nous ne pouvons pas l'inventer pour vous.
madinino
Messages postés
15
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
17 janvier 2011
12 janv. 2011 à 16:51
12 janv. 2011 à 16:51
je cherche le moyen de lire de rentrer dans une base les mot qui se situent avant un point virgule,par exemple mon fichier contient :
12;Mickael Jackson;45:23
il faut que j'arrive a rentrer dans ma base les mot 12, Mickael Jackson et 45:23,
si quelqu'un sait comment on peut faire, je lui serai vraiment reconnaissant.
12;Mickael Jackson;45:23
il faut que j'arrive a rentrer dans ma base les mot 12, Mickael Jackson et 45:23,
si quelqu'un sait comment on peut faire, je lui serai vraiment reconnaissant.
elwess20
Messages postés
26
Date d'inscription
samedi 1 janvier 2011
Statut
Membre
Dernière intervention
15 janvier 2011
12 janv. 2011 à 18:44
12 janv. 2011 à 18:44
en faite ,c'est une solution interressante,mais est ce qu'on peut faire avec la fonction fseek et strcpy?
si oui,comment faire?
mercii bcp mes amis pour vos reponses
si oui,comment faire?
mercii bcp mes amis pour vos reponses
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
13 janv. 2011 à 08:29
13 janv. 2011 à 08:29
fseek : non, car elle fonctionne en position pas en contenu.
en détaillant ces fonctions http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/string.3.html tu trouveras peut être ce qu'il te faut.
en détaillant ces fonctions http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/string.3.html tu trouveras peut être ce qu'il te faut.
madinino
Messages postés
15
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
17 janvier 2011
14 janv. 2011 à 21:54
14 janv. 2011 à 21:54
J'ai réussi a creer le parseur de fichier,voici le code:
Parcontre je ne sai pas comment inserer chaque mot dans une base de donnée, toute aide sera la bienvenu.
#include<conio.h>
#include <iostream>
#include <fstream>
#include <string>
#include <limits> // pour utiliser numeric_limits<int>::max()
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
int main()
{
char *pointeur;
char *separateur = { ";" }; // Le séparateur
char *buffer;
ifstream fichier("Playlist.csv", ios::in);
if(!fichier.fail())
{
string ligne;
while(getline(fichier, ligne))
{
int nb_mot=1;
size_t size = ligne.size() + 1;
char * tampon = new char[ size ];
// copier la chaîne
strncpy( tampon, ligne.c_str(), size );
buffer = strdup ( tampon );
// premier appel,
pointeur = strtok( buffer, separateur );
printf (" Mot de la phrase numero : %d %s\n",nb_mot, pointeur);
while( pointeur != NULL )
{
// Cherche les autres separateur
pointeur = strtok( NULL, separateur );
if ( pointeur != NULL )
{
nb_mot++; // increment du nombre de mot
printf ("Mot de la phrase numero : %d %s\n",nb_mot, pointeur);
}
}
}
fichier.close();
}
else
cerr << "Impossible d'ouvrir le fichier !" << endl;
getchar();
}
Parcontre je ne sai pas comment inserer chaque mot dans une base de donnée, toute aide sera la bienvenu.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
15 janv. 2011 à 11:09
15 janv. 2011 à 11:09
Merci de créer ton propre post.
Cela sera plus pratique pour t'aider.
Cdlt,
Cela sera plus pratique pour t'aider.
Cdlt,