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

Bibliothèque standard C Discussion :

structure FILE : nom du fichier


Sujet :

Bibliothèque standard C

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Août 2009
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut structure FILE : nom du fichier
    Bonjour !
    J'ai créé une fonction basée sur la structure FILE de la bibliothèque standard C. Elle prend en paramètre un FILE * qui contient le fichier à modifier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    void renommer(FILE *fichier, char *nouveauNom)
    {
        FILE *copieDuFichier = fichier;
        if(fichier != NULL) fclose(fichier);
        rename(copieDuFichier->/* ?????? <const char*> */, nouveauNom);
        fichier = fopen(nouveauNom, "r+");
    }
    Au cours de l'appel de la fonction rename(const char*, const char*), j'ai besoin du nom du fichier. Est-ce que la structure FILE contient une sous-variable qui le contient ? J'ai bien essayé de regarder dans stdio.h, mais je n'y ai rien compris, et je n'ai pas trouvé une doc'. Quelqu'un peut-il m'aider ?

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Salut !


    Tu dois explicitement passer en argument à ta fonction le nom du fichier car la structure FILE est d'un type opaque ce qui implique qu'il n'est pas possible de voir ses membres.

  3. #3
    Membre éprouvé Avatar de orfix
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 707
    Points : 1 132
    Points
    1 132
    Par défaut
    Le nom du fichier tu le connais certainement puisque tu as le descipteur, il suffit de le garder quelque parts en mémoire, sinon d'après ce que je sais la structure FILE ne contient pas le nom du fichier.

  4. #4
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Citation Envoyé par ssmario2
    sinon d'après ce que je sais la structure FILE ne contient pas le nom du fichier.
    En pratique c'est vrai, toujours vrai, mais la norme ne dit pas non plus qu'elle ne doit pas la contenir (cf le post de Franck, FILE est à priori une structure opaque).

    garok01, FILE est une structure utilisée pour les E/S, pas pour les opérations de gestion comme la copie, le déplacement ou la suppression d'un fichier. Pour ces opérations, c'est les noms des fichiers mis en jeu qu'on utilise. Donc pour faire des E/S sur un fichier, tu dois avoir la structure FILE qui la représente quelque part. Pour les opérations de gestion, tu dois avoir le nom du fichier sauvegardé quelque part. Tu peux créer tes propres types et tes propres fonctions si tu utilise intensivement aussi bien les fonctions d'E/S que les fonctions de gestion.

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/05/2013, 10h45
  2. [File & Zip] Caractères spéciaux dans les noms de fichiers
    Par Marvelll dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 12/02/2010, 17h50
  3. Réponses: 4
    Dernier message: 10/04/2007, 12h34
  4. structure du nom du fichier trc
    Par Titibirdy dans le forum Oracle
    Réponses: 4
    Dernier message: 08/01/2007, 13h49
  5. exp file= format nom de fichier
    Par cdu dans le forum Import/Export
    Réponses: 4
    Dernier message: 03/03/2006, 11h01

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