Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1540 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Methode istream::getline et la lecture d'un fichier...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Methode istream::getline et la lecture d'un fichier...

n°815067
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 17:16:59  profilanswer
 

:hello:
 
Je voudrais lire betement un fichier texte, et j'ai un ptit problème avec getline... :/
 
Si je me refère à cette page http://cplusplus.com/ref/iostream/istream/getline.html où l'on peut lire ceci :

Citation :

istream& getline (char* s, streamsize n, char delim );
 Parameters.
 
s
    A pointer to an array of characters.  
n
    The maximum number of characters to store, including the ternimating null character.
    This is an integer value of type streamsize.  
delim
    The delimiter. The operation of extracting succesive characters is stopped when delimiter is read. This parameter is optional, if not specified the function considers '\n' the delimiter.


j'en deduis que l'on passe à getline le pointeur d'un tableau de caractères où l'on souhaite recuperer ce que la fonction lit dans le fichier.
 
Or quand je fais cela, le compilo me sors une erreur :

Code :
  1. char cNumber[ID_TAILLE], //Numéro de l'enigme récupéré
  2. //Ouverture du fichier en lecture texte
  3. ifstream iFsTxtOut(cNomFichier, ios::in);
  4. //Lecture du champs 1 de la ligne
  5. iFsTxtOut.getline(cNumber, ID_TAILLE,  ";" );


 
il me dit que :

Citation :

error C2664: 'std::basic_istream<_Elem,_Traits>::_Myt &std::basic_istream<_Elem,_Traits>::getline(_Elem *,std::streamsize,_Elem)' : cannot convert parameter 3 from 'const char [2]' to 'char'
        with
        [
            _Elem=char,
            _Traits=std::char_traits<char>
        ]
        This conversion requires a reinterpret_cast, a C-style cast or function-style cast


Yé doit être fatigué car yé né comprend pas, pourtant il me semble bien lui donner ce qu'il veut comme premier paramètre... :??: Si quelqu'un sait qu'est-ce que je dois changer, je suis preneur... :jap:
 
(Le but ici etant au final de lire dans un fichier des valeurs séparées par des point virgules, et ligne par ligne...)
 
Mercÿte. :jap:


Message édité par Jesus Army le 04-08-2004 à 19:57:27
mood
Publicité
Posté le 04-08-2004 à 17:16:59  profilanswer
 

n°815103
SoWhatIn22
Posté le 04-08-2004 à 17:35:39  profilanswer
 

iFsTxtOut.getline(cNumber, ID_TAILLE,  ';');
suffit de comprendre ce que te dis le compilo...


Message édité par SoWhatIn22 le 04-08-2004 à 17:36:05
n°815106
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 17:37:04  profilanswer
 

Beh pour moi il me dit qu'il veut un char mais pourtant normalement c'est un char* qu'il devrait demander... :??:

n°815110
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 17:38:43  profilanswer
 

Ptain chuis fatigué moi, j'ai du relire au moins 15 fois l'erreur en lisant "parameter 1" au lieu de 3... :'(
 
Bon beh du coup forcement ca marche mieux...


Message édité par Jesus Army le 04-08-2004 à 17:39:38
n°815179
Taz
bisounours-codeur
Posté le 04-08-2004 à 18:30:01  profilanswer
 

utiliser
 
std::istream & getline(std::istream &, std::string & ) et rien d'autre :o

n°815218
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 19:09:52  profilanswer
 

Pas tout comprÿte daisolai je fatigue, (en plus vais avoir réunion et rentrer chez moi à pas d'heure :'() mais finalement j'utilise ca, et ca marche plutot bien : :)

Code :
  1. iFsTxtOut.get(cNumber, TAILLE, ';');


C'est mal ? :'(


Message édité par Jesus Army le 04-08-2004 à 19:10:01
n°815226
Taz
bisounours-codeur
Posté le 04-08-2004 à 19:16:25  profilanswer
 

oui c'est mal :o ça plante ça foire c'est crade

n°815242
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 19:49:18  profilanswer
 

[:sisicaivrai] [:sisicaivrai] [:sisicaivrai] [:sisicaivrai] [:sisicaivrai]

n°815243
Taz
bisounours-codeur
Posté le 04-08-2004 à 19:51:45  profilanswer
 

tu as essayé ce que je t'ai dit ?

n°815246
Jesus Army
Allez voir là bas si j'y suis
Posté le 04-08-2004 à 19:54:03  profilanswer
 

Ce que tu veux que je fasse ca serait ca : :??:

Code :
  1. iFsTxtOut.getline(cNumber, ";" );

mood
Publicité
Posté le 04-08-2004 à 19:54:03  profilanswer
 

n°815249
Taz
bisounours-codeur
Posté le 04-08-2004 à 19:59:58  profilanswer
 

non
 
std::getline(iFsTxtOut, aString, ';');
 
 
d'ailleurs si ton fichier est de sorti, ça me parait pas une bonne idée d'essayer d'y lire

n°815547
Jesus Army
Allez voir là bas si j'y suis
Posté le 05-08-2004 à 09:58:37  profilanswer
 

:jap:
 
De cette manière il va lire iFsTxtOut jusqu'à ce qu'il rencontre ';' et le mettre dans aString ? Sbien ca ? :ange: (Mais comment ca se fait que ce ne soit pas documenté ca dans la "doc" de getline ? :??:)
 
Et je l'ai appellé "Out" dans le sens ou j'en extrait les données et donc que je ne fais uniquement que de le lire... ;)(ca sera un fichier généré via tableur)


Message édité par Jesus Army le 05-08-2004 à 10:00:06
n°815598
Taz
bisounours-codeur
Posté le 05-08-2004 à 10:38:29  profilanswer
 

comment ça se fait que tu ne trouves pas la doc de getline ? moi je la trouve partout.
 
 
ton out est un nonsens, une lecture, c'est une entrée, un input. y a rien qui sors, c'est que des informations entrantes. donc s/Out/In

n°815712
Jesus Army
Allez voir là bas si j'y suis
Posté le 05-08-2004 à 11:42:36  profilanswer
 

Un lien vers des infos sur getline est sur le premier post, je n'ai pas dit que je n'avais pas trouvé celle ci... :ange:
 
Et tu as raison pour le out, en fait je devais être fatigué hier car c'est effectivement iFsTxtIn que je devrais appeller mon objet... :ange: :) (C'etait surement de savoir que j'allais arriver à quasiment 23h chez moi qui a du me perturber... :'()


Message édité par Jesus Army le 05-08-2004 à 11:43:11

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Methode istream::getline et la lecture d'un fichier...

 

Sujets relatifs
creation dynamic de PDF à partir d'un fichier Word sur un serveur iis?[batch dos RESOLU] lire nombre dans fichier et l'exploiter pour calcul
Créer fichier word en vbaDroits quand on crée un fichier ou un dossier en php
fin de processus lors d'acces fichierTester si un fichier existe...
Spprimer une ligne dans un fichierLancement fichier DOS
execution de fichier!PHP MyAdmin - insertion de fichier texte => Errcode 2:Can't get stat
Plus de sujets relatifs à : Methode istream::getline et la lecture d'un fichier...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR