Cherecher dans un string

Résolu
gm__ Messages postés 6 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 9 mars 2008 - 23 déc. 2007 à 17:05
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 24 déc. 2007 à 14:38
Bonjour!

Je suis en train de faire un programme qui ouvre un fichier et met en majuscule toute les lignes et certaines caracters.
J'aimerais le faire string str; et pas avec char ch[]; comme c'est plus secure.
Donc ce que je n'arrive pas a trouver c'est a savoir comment trouver un caracter dans un
string? Je pense utiliser getline() comme get() prends un char comme argument.

Merci d'avance!

7 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
23 déc. 2007 à 18:49
C'est plus compliqué pour rechercher dans un fichier. Faut ouvrir ton fichier en lisant bloc par bloc et dans chaque bloc tu recherches ce que tu veux. Si c'est un mot que tu recherches, c'est encore un peu plus subtile car ton mot peut se trouver sur plusieurs blocs.

Si ton fichier est tout petit (plusieurs Ko, voir quelques Mo) alors tu peux aussi te permettre de tout charger en RAM puis faire ta recherche.

Tout est la:
http://www.cplusplus.com/reference/iostream/ifstream/
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 déc. 2007 à 20:13
Rester couché est aussi plus secure que de se lever, moins de risque de tomber.

Comme expliqué par luthor, la recherche de mots dans un fichier exclut 'string' et autres biniouteries de ce genre. La gestion correcte de tableaux et pointeurs est le minimum prérequis pour envisager sortir un prog digne de ce nom.

ciao...
BruNews, MVP VC++
3
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
23 déc. 2007 à 17:46
Un string c'est surtout plus lent.
Tu peux utiliser la méthode string::find.

C++ (@++)<!--
0
gm__ Messages postés 6 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 9 mars 2008
23 déc. 2007 à 18:30
Merci , mais le problem avec find c'est qui'l ne marche pas avec ifstream, et moi
je veut ouvrir et chercher dans un fichier.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gm__ Messages postés 6 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 9 mars 2008
24 déc. 2007 à 14:26
Merci pour les reponses!
0
gm__ Messages postés 6 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 9 mars 2008
24 déc. 2007 à 14:29
Ps Comment editer son propre message si on a fait une faute?
 
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
24 déc. 2007 à 14:38
Si VRAIMENT très important, tu me signales en MP le post à enlever et tu le remets ensuite.

ciao...
BruNews, MVP VC++
0
Rejoignez-nous