Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Erreur fermeture ifstream [ Windows / Fichier & Disque ] (xeon666)

mardi 10 octobre 2006 à 16:05:37 | Erreur fermeture ifstream

xeon666

Voila mon probleme : Je lit un fichier séquentiellement et quand j'arrive a la fin ou que j'ai trouve ce que je désire, je sort de ma boucle ferme et le fichier et effectue mon return; Le probleme est que lorsque si je fait monifstream.close(), mon programme plante a cette instruction. Si je ne le fait pas, le programme plante au return. Voila mon code : [CODE] char* Tricap :: GETSEN(char *Chaine) { // nous devons recevoir deux parametres : respectivement le nom et le password ifstream inFile; int trouve=0; char *Plaignant, *Accuse, *Date, *toReturn=new char[10]; char *PlaignantFile=new char[200], *AccuseFile=new char[200], *DateFile=new char[200], *Verdict= new char[100]; cout<<"Demande de GETSEN"<<endl; // il faut séparer les parametres Plaignant = Parse(Chaine); Accuse = Parse(Chaine); Date= Parse(Chaine); cout<<"Plaignant : "<<Plaignant<<endl<<"Accuse : "<<Accuse<<endl<<"DATE : "<<Date<<endl; inFile.open(".//DATA//FileSentence", ios::in); if(!inFile.rdbuf()->is_open()) { cout<<"ERREUR DOUVERTURE DU FICHIER"; exit(1); // il faudra implementer une exception } while(!inFile.eof() && trouve==0) { char ligne[512]; inFile.getline(ligne, sizeof(ligne)); sscanf(ligne, "%s = %s = %s = %s", PlaignantFile, AccuseFile, DateFile, Verdict); cout<<"PLAIGNANT FILE : "<<PlaignantFile<<" ACCUSE FILLE : "<<AccuseFile<<" DATE FILLE : "<<DateFile<<" Verdict FILLE : "<<Verdict<<endl; if(strcmp(PlaignantFile, Plaignant) == 0) if(strcmp(AccuseFile, Accuse) == 0) if(strcmp(DateFile, Date) == 0) { trouve=1; cout<<"OK2"<<endl; //inFile.close(); } } if(trouve==0) { toReturn=new char[15]; strcpy(Verdict, "Aucune correspondance"); cout<<"OK3"<<endl; //inFile.close(); } cout<<"OK"<<endl; inFile.close(); return Verdict; } [/CODE]

mardi 10 octobre 2006 à 16:06:02 | Re : Erreur fermeture ifstream

xeon666

hummmmm erreur de balise

mardi 10 octobre 2006 à 16:08:13 | Re : Erreur fermeture ifstream

xeon666

char* Tricap :: GETSEN(char *Chaine)

{

// nous devons recevoir deux parametres : respectivement le nom et le password

ifstream inFile;

int trouve=0;

char *Plaignant, *Accuse, *Date, *toReturn=new char[10];

char *PlaignantFile=new char[200], *AccuseFile=new char[200], *DateFile=new char[200], *Verdict= new char[100];

cout<<"Demande de GETSEN"<<endl;


// il faut séparer les parametres

Plaignant = Parse(Chaine);

Accuse = Parse(Chaine);

Date= Parse(Chaine);

cout<<"Plaignant : "<<Plaignant<<endl<<"Accuse : "<<Accuse<<endl<<"DATE : "<<Date<<endl;



inFile.open(".//DATA//FileSentence", ios::in);


if(!inFile.rdbuf()->is_open())

{

cout<<"ERREUR DOUVERTURE DU FICHIER";

exit(1); // il faudra implementer une exception

}


while(!inFile.eof() && trouve==0)

{

char ligne[512];

inFile.getline(ligne, sizeof(ligne));

sscanf(ligne, "%s = %s = %s = %s", PlaignantFile, AccuseFile, DateFile, Verdict);

cout<<"PLAIGNANT FILE : "<<PlaignantFile<<"  ACCUSE FILLE : "<<AccuseFile<<"  DATE FILLE : "<<DateFile<<"  Verdict FILLE : "<<Verdict<<endl;

if(strcmp(PlaignantFile, Plaignant) == 0)

if(strcmp(AccuseFile, Accuse) == 0)

if(strcmp(DateFile, Date) == 0)

{

trouve=1;

cout<<"OK2"<<endl;

//inFile.close();

}

}

if(trouve==0)

{

toReturn=new char[15];

strcpy(Verdict, "Aucune correspondance");

cout<<"OK3"<<endl;

//inFile.close();

}

cout<<"OK"<<endl;

inFile.close();


return Verdict;




}



Cette discussion est classé dans : trouve, char, cout, infile, verdict


Répondre à ce message

Sujets en rapport avec ce message

problème de lecture en c++ sous vc++6 [ par os22 ] j'essaie de lire un fichier ayant le contenu suivantmarc;collin;4506777228;906 boule;longueuil;j4j1t5;qc;14;allo;roger;dumais;5413432128;1150 dumahel; re:recherche et comparaison dans fichier [ par rissorg ] merci mais j'ai trouve une solution avec des strings.Malheureusement je suis coince sur autre chose.quand je passe mes donnees sur exel ca m'ecrit n'i Visual C++ Free() [ par PRZYBYLSKI ] #include #include #include "stdafx.h"Question au Pro?Qu'es qui est faux docteurArrivé à free ça bombe#include <io Dans le genre prenant........ [ par Xs ] oui !c 'est trés chiant !j'explique mon pb : j'ai un code source, fais par moi-meme, et dedans, je veux que l'on saisisse des renseignement comme le l probleme sur une classe [ par NerOcrO ] Voici mon code :#include #include class Chanson //classe Chanson{ public: int Duree; char TypeDeFichier[3], Auteur[50], Titre[50], Interprete[50 j'ai commencé un sof mais je bloque ! :( [ par xionoxid ] Voilà quand je demande rentré le pass si il met "a" alors ça devrait faire login = rien; mais le probleme c'est que meme si je met a et ça fait PAS lo Ecriture/lecture dans un fichier [ par SneakGuy ] Haaa... Merci, sa m'a aider... Enfin, j'ai encore plusieurs problemes...pour l'ecriture j'ai quelque chose qui ressemble a sa:char user[20];char pass[ recherche et comparaison dans fichier [ par rissorg ] J'ai un probleme de recherche et de comparaison entre une string rentree au clavier et des donnees sur un fichier texte.Voici mon source:#include #inc comparation chaine de caractere [ par SfyLer ] prise de tête j'arrive pas a comparer de chaine de caractere:#include #include char main(void){ char login[6]; cout cin >> login; cout << "\n";<b help me !!! [ par pascal13 ] j arrive pas a compiler mon programme...je sais que g qlq que souccis au niveau de la sauvegarde des données sur le fichier toutes remarques seront le


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.