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

MFC Discussion :

[MFC] recupération date modif fichier


Sujet :

MFC

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut [MFC] recupération date modif fichier
    Bonjour, je cherche à récupérer la date de modification (ou création) d'un fichier grace à son chemin.
    J'ai bien trouvé la fonction "GetFileTime", mais je n'arrive pas à l'utiliser correctement, j'ai encore du mal avec MFC....
    Merci pour votre aide

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    ben ça n'a rien a voir avec les MFC c'est une api 32 ,
    exemple tiré de MSDN et modifié par moi :
    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
    29
    30
    31
    32
    33
    34
     
    // GetLastWriteTime - retrieves the last-write time and converts the
    //                   time to a string
    // Return value - TRUE if successful, FALSE otherwise
    // hFile      - must be a valid file handle
    // lpszString - pointer to buffer to receive string
     
    BOOL GetLastWriteTime(HANDLE hFile, LPSTR lpszString)
    {
        FILETIME ftCreate, ftAccess, ftWrite, ftLocal;
        SYSTEMTIME stCreate;
     
        // Retrieve the file times for the file.
        if (!GetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite))
            return FALSE;
     
        // Convert the last-write time to local time.
        if (!FileTimeToLocalFileTime(&ftWrite, &ftLocal))
            return FALSE;
     
        // Convert the local file time from UTC to system time.
        FileTimeToSystemTime(&ftLocal, &stCreate);
     
        // Build a string showing the date and time.
        wsprintf(lpszString, "%02d/%02d/%d  %02d:%02d",
            stCreate.wDay, stCreate.wMonth, stCreate.wYear,
            stCreate.wHour, stCreate.wMinute);
     
        return TRUE;
    }
    char szString[100];
     HANDLE hFile=CreateFile("Myfichier.txt",GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
    if (hFile != INVALID_HANDLE_VALUE) 
      GetLastWriteTime(hFile, szString);

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut
    'Tain trop fort
    J'avais déjà essayé cet exemple, mais je l'exploitais mal, merci

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut
    Tant que j'y suis, tu ne saurais pas comment récupérer cette date en genre de "timestamp" pour faire un classement et des comparaison facilement?
    Merci.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut
    Je viens de me rendre compte qu'il me faudrait les secondes aussi.... C'est possible?

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    disons que peut etre le moyen le plus facile c'est de le convertir en objet CTime
    et d'utiliser la fonction GetSecond( ) .
    que veux tu dire par timestamp tu veux un entier ?
    avec la classe CTime tu peux construire un objet d'apres une structure SYSTEMTIME ou FILETIME.
    apres tu peux utiliser les operateurs > < etc .. pour comparer.
    voir constructeurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    CTime&#40; const SYSTEMTIME& sysTime, int nDST = -1&#41;;
    CTime&#40; const FILETIME& fileTime, int nDST = -1 &#41;;

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par farscape
    que veux tu dire par timestamp tu veux un entier ?
    Oui, c'est ca, car je voudrais trouver des couples de fichiers qui ont été créé en meme temps (à 3 secondes pres)

    Merci pour le CTime, je vais voir ca.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 54
    Points : 40
    Points
    40
    Par défaut

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

Discussions similaires

  1. Heure d'été/heure d'hiver et date modification fichier
    Par lokomass dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 21/11/2014, 10h50
  2. [Batch] Date modification fichier
    Par MrBeb dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 20/05/2010, 15h03
  3. Date modification fichier
    Par Johnny P. dans le forum Débuter
    Réponses: 3
    Dernier message: 06/05/2010, 14h29
  4. BATCH Récupérer date modif fichier
    Par Carlozi dans le forum Unix
    Réponses: 4
    Dernier message: 19/02/2009, 17h06
  5. [VB6] Date modification fichier FTP
    Par KrusK dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 27/06/2006, 10h41

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