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 :

Gestion des fichiers


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 4
    Par défaut Gestion des fichiers
    Bonjour à tous (& merci pour toute l'aide que vous apportez)

    Etant débutant en C/C++, j'ai recherché sur le forum des informations concernant la gestion des fichiers en C. Les quelques messages que j'ai pu trouver et consulter utilisent tous le fichier d'en-tête "dirent.h".

    J'aimerai savoir s'il est possible (en utilisant uniquement la bibliothèque "standard" du C) de récupérer des informations liés à un fichier comme par exemple sa date de création, de modification, son attribut ... ou autre exemple, générer des listes de noms des fichiers/dossiers à partir d'un emplacement spécifique !

    En faite, ma question repose plus "sur la théorie" que sur le réel besoin d'un code source car je m'étonne que tout les tutorials (et livres) que j'ai pu consulter sur le C/C++ depuis ces six derniers mois n'abordent que les bases de la gestion des fichiers, c.a.d : ouverture, fermeture, lecture, écriture et quelques algos rudimentaires concernant les chaines de caractères ... Mais à part çà, c'est le flou total !!!

    Merci pour vos conseils ... et à bientôt !

    - Sigma9o9 -

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,
    Citation Envoyé par Sigma9o9 Voir le message
    J'aimerai savoir s'il est possible (en utilisant uniquement la bibliothèque "standard" du C) de récupérer des informations liés à un fichier comme par exemple sa date de création, de modification, son attribut ... ou autre exemple, générer des listes de noms des fichiers/dossiers à partir d'un emplacement spécifique !
    Non. La bibliothèque standard ne fourni que la base. Les autres attributs et leur accès dépendent du système d'exploitation sur lequel le fichier est stocké.

    Pourquoi <dirent.h> ?
    Parce que c'est posix, et donc ça fonctionne sur pas mal de systèmes (windows, linux...)

  3. #3
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 486
    Par défaut
    Citation Envoyé par Sigma9o9 Voir le message
    Etant débutant en C/C++, j'ai recherché sur le forum des informations concernant la gestion des fichiers en C. Les quelques messages que j'ai pu trouver et consulter utilisent tous le fichier d'en-tête "dirent.h"
    dirent, comme son nom l'indique, contient les prototypes des fonctions de manipulation des répertoires (les dossiers, sous Windows).

    Sinon, sous UNIX/Posix, tu as fstats().
    Sous Windows, tu peux voir GetFileAttributesEx().

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Sigma9o9 Voir le message
    Etant débutant en C/C++,
    Il n'y a pas de C/C++. Il y a C et il y a C++. Ce sont 2 langages différents avec des règles différentes. Alors tu fais du C ou du C++ ?

    j'ai recherché sur le forum des informations concernant la gestion des fichiers en C. Les quelques messages que j'ai pu trouver et consulter utilisent tous le fichier d'en-tête "dirent.h".
    Tu confonds fichiers et répertoires. La notion de répertoire (directory) n'existe pas en C standard. Il n'y a donc aucune fonction pour les manipuler. Par contre, certains systèmes, qui utilisent les répertoires pour organiser les fichiers, fournissent des fonctions systèmes qui permettent de gérer ces répertoires.

    Un consortium d'éditeurs de système (l'OpenGroup) s'est mis d'accord pour uniformiser (standardiser) un certain nombre de fonctions système, dont celles de <dirent.h>. C'est le standard POSIX.1 qui s'appuie sur le langage C et ajoute des centaines de fonctions systèmes très pratiques.

    J'aimerai savoir s'il est possible (en utilisant uniquement la bibliothèque "standard" du C) de récupérer des informations liés à un fichier comme par exemple sa date de création, de modification, son attribut ... ou autre exemple, générer des listes de noms des fichiers/dossiers à partir d'un emplacement spécifique !
    En C standard, non. Mais les systèmes compatibles POSIX.1 disposent de ces fonctions. Par exemple, grace au travail de dizaines de bénévoles qui écrivent du logiciel libre, fstat() de <sys/stat/h> est disponible sous Windows si on utilise MinGW ou Cygwin (mais pas sous Visual C++, Microsoft ayant refusé d'appartenir à OpenGroup).
    En faite, ma question repose plus "sur la théorie" que sur le réel besoin d'un code source car je m'étonne que tout les tutorials (et livres) que j'ai pu consulter sur le C/C++ depuis ces six derniers mois n'abordent que les bases de la gestion des fichiers, c.a.d : ouverture, fermeture, lecture, écriture et quelques algos rudimentaires concernant les chaines de caractères ... Mais à part çà, c'est le flou total !!!
    Je pense que maintenant, tu sais pourquoi.

    http://emmanuel-delahaye.developpez....m#c_vs_systeme
    http://emmanuel-delahaye.developpez.com/notes.htm#posix

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 4
    Par défaut
    Merci pour votre aide, je vais maintenant rechercher des informations sur le standart POSIX et étudier les fonctions liés aux fichiers !

    Alors tu fais du C ou du C++ ?
    Ben les deux, puisque à la base je viens du C mais désirant étudier les API, MFC, le C++ est indispensable.

    Encore merci et à bientôt

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Sigma9o9 Voir le message
    Ben les deux, puisque à la base je viens du C mais désirant étudier les API, MFC, le C++ est indispensable.
    Pour l'API WIn32, le C suffit.

  7. #7
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 4
    Par défaut
    Citation Envoyé par Emmanuel Delahaye Voir le message
    Pour l'API WIn32, le C suffit.
    En faite j'étais partie sur ces cours (voir liens ci-dessous) et j'avais présumé qu'il fallait impérativement passer par le C++ :

    http://bob.developpez.com/tutapiwin/
    http://farscape.developpez.com/tutor...arrer-mfc-vc6/

    Je vais donc commencer par les API de Windows après l'étude du standard POSIX.

    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gestion des fichiers
    Par babar56 dans le forum C
    Réponses: 10
    Dernier message: 15/04/2006, 10h34
  2. [VBA-E] gestion des fichiers ouverts ...
    Par SpaceFrog dans le forum Macros et VBA Excel
    Réponses: 24
    Dernier message: 20/01/2006, 17h10
  3. [FTP] Gestion des fichiers Online ?
    Par MaTHieU_ dans le forum Langage
    Réponses: 9
    Dernier message: 23/10/2005, 15h16
  4. Gestion des fichiers
    Par roger12 dans le forum Administration système
    Réponses: 2
    Dernier message: 19/10/2005, 09h01

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