IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

Problème avec fstream


Sujet :

SL & STL C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut Problème avec fstream
    Bonjour à tous,
    Je voudrais lire dans un fichier texte donc je tape ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    #include <condefs.h>
    #include <fstream.h>
    #include <conio.h>
    #pragma hdrstop
     
    {
    	char buff[80];
    	ifstream infile("F:\\sfr.txt");
    	infile.open("sfr.txt");
    	infile.getline(buff, sizeof(buff));
    	cout << buff << end1;
     
    }
    Et quand je compile il me dit que fstream est inconnu je suis en C++ 5.02

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 36
    Points : 43
    Points
    43
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #include <fstream>
     
    using namespace std;

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Ca ne compile toujours pas il me dit :
    Unable to open include file 'condefs.h'

    Merci.

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 36
    Points : 43
    Points
    43
    Par défaut
    il n'arrive pas a trouver le fichier que tu veux inclure

    verifie le nom, le path ... et meme si il te sert vraiment a qqch

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Ouaih... Je ne trouve pas "condefs.h"... et puis il me dit : "Declaration syntax error" dans le fichier "iostream.h".je ne comprend plus rien.. :

  6. #6
    Membre régulier Avatar de hamster
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2003
    Messages : 137
    Points : 123
    Points
    123
    Par défaut
    as tu inclus <iostream> ? (et non pas <iostream.h>)

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Non, c'est pour cela que je ne comprend pas je n'est pas inclu iostream ni iostream.h. Et pourtant toutes les erreurs ce trouve dans ce fichier :

    Merci pour votre aide.

  8. #8
    Membre habitué Avatar de PINGOUIN_GEANT
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 149
    Points : 155
    Points
    155
    Par défaut Re: Problème avec fstream
    Citation Envoyé par cach
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	ifstream infile("F:\\sfr.txt");
    	infile.open("sfr.txt");
    ce bout de code m'a l'air redondant. la déclaration de variable devrait suffire, non ?
    " Tout homme est digne d'un parapluie." Stavroguine dans Les Démons de Dostoïevski.

  9. #9
    Membre habitué
    Inscrit en
    Avril 2002
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 180
    Points : 157
    Points
    157
    Par défaut
    ton compliateur ne trouve pas <fstream.h> et <fstream>
    ces etrange
    quelle compilateur est que tu utilise

    ya pue avoir de la magouille dans les configuration configuration du conpilateur ???
    ou bien fstream.h a ete effacer par accident est que le fichrer fstream.h existe sur ton ordi???

  10. #10
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Le code correct pour ce que tu nous a montré est le suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #include <fstream>
    #include <string>
    #include <iostream>
     
    int main()
    {
       std::string buff;
       std::ifstream infile("F:\\sfr.txt");
       std::getline(infile, buff);
       std::cout << buff << std::endl;
     
       return 0;
    }
    Si tu as toujours des erreurs avec ça, là ce n'est pas normal.


    PS : c'est endl, pas end1

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Boujour,
    Merci à tous pour votre attention,

    Le compilateur que j'utilise philippe est Borland C++ v 5.02. Le fichier fstream.h est bien exsitant sur mon ordi dans le dossier "INCLUDE" et il est fort possible que les compilateur est été magouillé.

    Loulou24, je te remercie pour ce morceau de code que je vien juste d'essayer mais que je n'arrive toujour pas à compiler, j'en deduit que cela n'est vraiment pas normal mais je ne sais pas quoi faire.

    Merci.

  12. #12
    Membre habitué
    Inscrit en
    Avril 2002
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 180
    Points : 157
    Points
    157
    Par défaut
    je ne connait pas vraiment le complo de Borland
    mais il doit y avoir un setting pour lui dire ou trouver les include et object
    qui sais il y a peut etre un bouton restore default ????

    si non les setting generaux s'ont peut etre storer dans la basse de registe
    si ces le cas ca vas etre plus dificile

    je te conseille d'envoyer un mail a borland support il seront surment les mieux placer pour t'aider

    si non tu peur essayer de reinstaler le compilateur

    bon courage

  13. #13
    Inactif  

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    534
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 534
    Points : 403
    Points
    403
    Par défaut
    Bonsoir,

    Pour cach :

    Virer "condefs.h" .

    Le compilateur que j'utilise philippe est Borland C++ v 5.02. Le fichier fstream.h est bien exsitant sur mon ordi dans le dossier "INCLUDE" et il est fort possible que les compilateur est été magouillé.
    Salut, j'ai peut-être le même problème avec Borland 5.02 mais
    pas avec le compilateur Borland CBuilder 5.5.

    Il me semble que le 5.02 de Borland n' accepte pas la syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    #include <fstream> 
    #include <string> 
    #include <iostream> 
     
    using namespce std ;
     
     int main() 
     { 
        string buff ;
        ifstream infile("F:\\sfr.txt"); 
        getline(infile, buff);   //  ==> ça couine  avec 5.02
        cout << buff << endl ; 
        return 0; 
     }
    Par contre essayer peut-être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    #include <fstream> 
    #include <string> 
    #include <iostream> 
     
    using namespce std ;
     
     int main() 
     { 
        char buff{512] ;
        ifstream infile("F:\\sfr.txt"); 
        if( ! infile ) return 0 ; 
        infile.getline(  buff , sizeof(buff) );   //  ==>  5.02 
        cout << buff << endl ; 
        return 0; 
     }
    Le Borland 5.02 commence à vieillir !
    Moi aussi !

    Si ça ne marche pas c'est troublant...

    Il se pourrait que votre installation de Borland C++ 5.02
    se soit mal passée, car <fstream.h> fait bel et bien parti
    du C++.

    Cordialement.

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Je vous remercie mais la compilation ne s'effectue toujour pas... C'est troublant je vais réinstaller le compilateur Borland C++ et j'espére que ca marchera car 3 jour pour lire dans un fichier ca fait tout de même bocoup.

    Merci à tous

  15. #15
    jmv
    jmv est déconnecté
    Membre confirmé Avatar de jmv
    Profil pro
    Enseignant
    Inscrit en
    Mai 2004
    Messages
    395
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2004
    Messages : 395
    Points : 603
    Points
    603
    Par défaut
    salut,
    Borland C++ 5.02 est un vieux compilo, il ne connait pas les fichiers iostream, string, ....et les "namespace". Il faut inclure les fichiers ".H".

    essaye ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include <iostream.h> 
    #include <fstream.h> 
     
    #pragma hdrstop // ça je na sais pas à quoi ça sert !!!
     
    { 
       char buff[80]; 
       ifstream infile("F:\\sfr.txt"); 
       infile.getline(buff, sizeof(buff)); 
       cout << buff << endl; // et pas end1 
    }

  16. #16
    Inactif  

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    534
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 534
    Points : 403
    Points
    403
    Par défaut
    Bonsoir,

    Pour jmv :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #pragma hdrstop
    C'est Borland pour accélérer la compilation
    Pour la non reconnaissance de fstream.h

    Linuxien j'ai tout de même compulsé mon
    Borland C++ 5.0A.

    Je me suis aperçu que la STL ( obsolète et boguée )
    fonctionnait de manière érratique pour les applications
    16 bits ( Windows, pas la peine de parler Dos )

    Dans l'expert projet du Borland C++ 5.xx, il me semble
    qu'il faut choisir une cible 32 bits ( mode console en l' occurrence ).

    Cible 32 bits, Borland C++ 5.xx reconnait la STL, et
    le "using namespace std".

    Et pourtant la STL (vector) est boguée...

    A mon avis faîtes le deuil du 16 bits. Application
    console 32 bits me semble être la meilleure solution,
    pour les applis console certes.

    Malgré son vielle age, Borland C++ 5.xx, permet tout
    de même de réaliser des applications Windows.
    Courage quant à la codification !


    Cordialement.

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Toujour des erreur dans iostream.h, je n'y comprend plus rien j'ai pourtant tout essayé..

  18. #18
    jmv
    jmv est déconnecté
    Membre confirmé Avatar de jmv
    Profil pro
    Enseignant
    Inscrit en
    Mai 2004
    Messages
    395
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2004
    Messages : 395
    Points : 603
    Points
    603
    Par défaut
    Chez moi ce code compile et marche correctement (j'ai du changer le chemin du fihier .txt (pas de f: chez moi))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #include <iostream.h>
    #include <fstream.h>
     
    #pragma hdrstop 
     
    int main()
    {
       char buff[80];
       ifstream infile("sfr.txt");
       infile.getline(buff, sizeof(buff));
       cout << buff << endl; // et pas end1
       cin.get();
    }
    et celui la aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #include <iostream>
    #include <fstream>
     
    #pragma hdrstop 
     
    int main()
    {
       char buff[80];
       ifstream infile("sfr.txt");
       infile.getline(buff, sizeof(buff));
       cout << buff << endl; // et pas end1
       cin.get();
    }
    Je me suis donc un peu trompé , iostream et fstream ont l'air d'exister même sans l'extenion .h . Les namespace sont reconnu (merci dj.motte ) mais le namespace std n'existe pas (et ça compile sans!!!)

    J'ai compilé avec Borland C++ 5.02, j'ai fait un projet console win32 (avec "class library" et linkage static)

    cach ==> si tu nous disais quelles erreurs.

Discussions similaires

  1. Problème de copie avec fstream
    Par Nekkro dans le forum C++
    Réponses: 24
    Dernier message: 11/05/2012, 11h22
  2. Problème avec fstream
    Par Ziarrow dans le forum C++
    Réponses: 3
    Dernier message: 27/08/2010, 17h07
  3. Problème avec le header <fstream.h>
    Par micflor dans le forum Débuter
    Réponses: 7
    Dernier message: 18/12/2009, 12h06
  4. [C++] problèmes avec fstream
    Par Ulrar dans le forum C++
    Réponses: 22
    Dernier message: 07/04/2008, 16h57
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo