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

C Discussion :

ouverture d'un fichier texte


Sujet :

C

  1. #1
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut ouverture d'un fichier texte
    Bonjour,
    j'ai un problème lors d'ouverture d'un fichier texte
    voici le 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #define TAILLE_MAX 1000
    int main(int argc, char *argv[])
    {
     
     
     
    	FILE* fich; 
    	char chaine[TAILLE_MAX]=" ";
    	fich=fopen("test.txt","r");
     
                     if (fich==NULL) 
     
    		printf("impossible d'ouvrir \n"); 
     
    	         else
                    {
    		           while( fgets(chaine, TAILLE_MAX, fich)!= NULL)  
                                 printf("%s", chaine); 
    	          }
     
    	fclose(fich);
    	return 0;
     
    }

  2. #2
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    Bonjour

    Citation Envoyé par twity
    j'ai un problème lors d'ouverture d'un fichier texte
    C'est particulièrement vague ! Peux-tu préciser ?

    [EDIT] y-a-t-il seulement un fichier "test.txt" dans le répertoire courant ?

  3. #3
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut
    Citation Envoyé par plxpy Voir le message
    Bonjour



    C'est particulièrement vague ! Peux-tu préciser ?
    toujours impossible d'ouvrir le fichier même si je précise le chemin relatif

  4. #4
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    Préciser un chemin ne te sert à rien : tu mets des choses dans argv que tu n'exploites pas.

    Y-a-t-il un fichier "test.txt" dans le répertoire courant ? C'est toujours celui-là que tu tentes d'ouvrir (codé en dur)

  5. #5
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 502
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 502
    Billets dans le blog
    1
    Par défaut
    Quand on a un problème, c'est bien de dire lequel. Si nos talents de divination en terme de résolution sont avérés, ceux en terme de problème le sont moins.

    Regarde la fonction perror(), qui te permettra d'afficher la raison pour laquelle le fichier n'a pas pu être ouvert.

  6. #6
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut
    [QUOTE=plxpy;6972680]Préciser un chemin ne te sert à rien : tu mets des choses dans argv que tu n'exploites pas.

    c à d je passe le chemin en argv?? j pas bien compris

  7. #7
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    1. mets, comme te l'a conseillé Bktero, un "perror("cause : ");" quand tu récupères le NULL du fopen (ligne 17, A LA PLACE (pas { }) du printf. Au moins, on sera fixé sur les causes de la non-ouverture du fichier

    2. mettre un chemin - relatif ou pas - sur la ligne de commande va "automatiquement" remplir le tableau argv. Mais jamais tu ne lis quoi que ce soit dans ce tableau - je voulais donc dire que mettre un chemin sur la ligne de commande ne changeait rien à ton problème étant donné que tu ouvres systématiquement "test.txt", codé en dur

  8. #8
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut
    message affiche par perror : No such file or directory
    pourtant il existe?? !!

  9. #9
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    pourtant il existe?? !!
    Ah ben non ! Peut-être ailleurs, mais pas dans le répertoire courant !
    A la longue, si fopen se prenait les pieds dans le tapis avec ce genre de choses, ça se serait vu ...

    Est-ce que "répertoire courant" évoque quelque chose pour toi ? Tu travailles sous quel système ? Tu lances ton exécutable en ligne de commande ? depuis un EDI ?

  10. #10
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut
    Citation Envoyé par plxpy Voir le message
    Ah ben non ! Peut-être ailleurs, mais pas dans le répertoire courant !
    A la longue, si fopen se prenait les pieds dans le tapis avec ce genre de choses, ça se serait vu ...

    Est-ce que "répertoire courant" évoque quelque chose pour toi ? Tu travailles sous quel système ? Tu lances ton exécutable en ligne de commande ? depuis un EDI ?
    C-Free sous Windows

  11. #11
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    Et bien ca veut dire que le répertoire où C-Free a généré ton exécutable n'est pas le répertoire où, toi, tu "vois" le fichier test.txt
    c'est même pas complètement/forcément vrai mais l'idée y est)

    Fais un truc tout moche, rien que pour t'en convaincre

    mets

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    system("pwd");   // pour voir le repertoire courant
    system("dir");   // pour avoir la liste des fichiers
    en début de programme et tu verras

  12. #12
    Membre confirmé
    Homme Profil pro
    Etudiant En dev jeux video ESGI. Dev c/c++
    Inscrit en
    Novembre 2012
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Vietnam

    Informations professionnelles :
    Activité : Etudiant En dev jeux video ESGI. Dev c/c++

    Informations forums :
    Inscription : Novembre 2012
    Messages : 63
    Par défaut
    peut etre dis-je des betises ou sq aucun rapport

    mais essaie comme sa en mettant en dur le chemin complet du genre ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fich=fopen("C:\\Dev\\a_geter\\grep\\Debug\\toto.txt","r");
    en mettant des double \\ ....

  13. #13
    Membre émérite
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Par défaut
    Typiquement, bon nombre d'IDE vont chercher le fichier dans le répertoire du « projet », qui est souvent différent du répertoire du fichier exécutable. Vérifie que cela n'est pas dû à cette particularité.
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  14. #14
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 33
    Par défaut
    :ccool ça marche merci

Discussions similaires

  1. Ouverture d'un fichier texte avec ADO
    Par sony351 dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/02/2007, 16h54
  2. [Plone] ouverture d'un fichier texte (problème très simple)
    Par Beatrix_debutante dans le forum Zope
    Réponses: 6
    Dernier message: 03/10/2006, 17h12
  3. [VB6] Ouverture de plusieurs fichiers textes
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 12/09/2006, 10h45
  4. Message étrange à l'ouverture d'un fichier texte
    Par Bahan dans le forum Applications et environnements graphiques
    Réponses: 7
    Dernier message: 27/07/2006, 11h16
  5. [VBA-E] Formatage des données à l'ouverture d'un fichier texte
    Par jmercier dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/11/2005, 17h00

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