begin process at 2012 02 16 21:54:48
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

API

 > RETROUVE LA DATE DE CRÉATION D'UN FICHIER - API

RETROUVE LA DATE DE CRÉATION D'UN FICHIER - API


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :API Classé sous :date, fichier, création Niveau :Débutant Date de création :12/11/2004 Vu :11 287

Auteur : Nocturne

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note


 Description

Une petite procédure très simple pour retrouver la date, l'heure de création d'un fichier avec les API.

Testé sous Win98 et 2000.

Source

  • '*****Dans une form*****
  • Dim Fichier_Path As String: Fichier_Path = ""
  • Dim Fichier_Existe As Boolean: Fichier_Existe = False
  • Dim Fichier_Date As String: Fichier_Date = ""
  • '**Fichier cible : test.txt**
  • If Right(App.Path, 1) <> "\" Then
  • Fichier_Path = App.Path & "\" & "test.txt"
  • Else
  • Fichier_Path = App.Path & "test.txt"
  • End If
  • Call Date_File(Fichier_Path, Fichier_Existe, Fichier_Date)
  • '*****On peut mettre le reste dans un module*****
  • Private Declare Function FileTimeToLocalFileTime Lib "kernel32" (lpFileTime As FILETIME, lpLocalFileTime As FILETIME) As Long
  • Private Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long
  • Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
  • Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
  • Private Const MAX_PATH = 260
  • Private Type FILETIME
  • dwLowDateTime As Long
  • dwHighDateTime As Long
  • End Type
  • Private Type WIN32_FIND_DATA
  • dwFileAttributes As Long
  • ftCreationTime As FILETIME
  • ftLastAccessTime As FILETIME
  • ftLastWriteTime As FILETIME
  • nFileSizeHigh As Long
  • nFileSizeLow As Long
  • dwReserved0 As Long
  • dwReserved1 As Long
  • cFileName As String * MAX_PATH
  • cAlternate As String * 14
  • End Type
  • Private Type SYSTEMTIME
  • wYear As Integer
  • wMonth As Integer
  • wDayOfWeek As Integer
  • wDay As Integer
  • wHour As Integer
  • wMinute As Integer
  • wSecond As Integer
  • wMilliseconds As Integer
  • End Type
  • Public Sub Date_File(Chemin_File As String, Existe_File As Boolean, Date_File As String)
  • If Dir(Chemin_File, vbNormal) = "" Then 'Le fichier n'existe pas
  • Existe_File = False
  • Exit Sub
  • Else 'Le fichier existe
  • Existe_File = True
  • End If
  • Dim Info_Fichier As WIN32_FIND_DATA
  • '**Localise/identifie le fichier sur le disque et Info_Fichier reçoit les informations**
  • Call FindClose(FindFirstFile(UCase(Chemin_File), Info_Fichier))
  • Dim ft As FILETIME
  • '**Convertion de la date UTC en temps locale**
  • Call FileTimeToLocalFileTime(Info_Fichier.ftCreationTime, ft)
  • Dim st As SYSTEMTIME
  • '**Convertion en date et heure system**
  • Call FileTimeToSystemTime(ft, st)
  • '**Date_File récupére la date sous forme : "11/11/2004"**
  • Date_File = st.wDay & "/" & st.wMonth & "/" & st.wYear
  • '**Autre exemple date et heure sous la forme "jeudi 11 novembre 2004 14:11:23"**
  • Dim FileTimeToDouble As Double
  • Dim FormatFileDate As String
  • 'Renvoie la date correspondant au jour, au mois, à l'année indiqués etc...
  • FileTimeToDouble = DateSerial(st.wYear, st.wMonth, st.wDay) + TimeSerial(st.wHour, st.wMinute, st.wSecond)
  • 'Format la date de type sous forme : "jeudi 11 novembre 2004 14:11:23"
  • FormatFileDate = Format(FileTimeToDouble, "long date") & " " & Format(FileTimeToDouble, "long time")
  • End Sub
'*****Dans une form*****
Dim Fichier_Path As String: Fichier_Path = ""
Dim Fichier_Existe As Boolean: Fichier_Existe = False
Dim Fichier_Date As String: Fichier_Date = ""

'**Fichier cible : test.txt**
If Right(App.Path, 1) <> "\" Then
  Fichier_Path = App.Path & "\" & "test.txt"
Else
  Fichier_Path = App.Path & "test.txt"
End If
Call Date_File(Fichier_Path, Fichier_Existe, Fichier_Date)


'*****On peut mettre le reste dans un module*****

Private Declare Function FileTimeToLocalFileTime Lib "kernel32" (lpFileTime As FILETIME, lpLocalFileTime As FILETIME) As Long
Private Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long

Private Const MAX_PATH = 260

Private Type FILETIME
   dwLowDateTime As Long
   dwHighDateTime As Long
End Type

Private Type WIN32_FIND_DATA
   dwFileAttributes As Long
   ftCreationTime As FILETIME
   ftLastAccessTime As FILETIME
   ftLastWriteTime As FILETIME
   nFileSizeHigh As Long
   nFileSizeLow As Long
   dwReserved0 As Long
   dwReserved1 As Long
   cFileName As String * MAX_PATH
   cAlternate As String * 14
End Type

Private Type SYSTEMTIME
   wYear As Integer
   wMonth As Integer
   wDayOfWeek As Integer
   wDay As Integer
   wHour As Integer
   wMinute As Integer
   wSecond As Integer
   wMilliseconds As Integer
End Type

Public Sub Date_File(Chemin_File As String, Existe_File As Boolean, Date_File As String)

If Dir(Chemin_File, vbNormal) = "" Then 'Le fichier n'existe pas
  Existe_File = False
  Exit Sub
Else 'Le fichier existe
  Existe_File = True
End If

Dim Info_Fichier As WIN32_FIND_DATA
'**Localise/identifie le fichier sur le disque et Info_Fichier reçoit les informations**
Call FindClose(FindFirstFile(UCase(Chemin_File), Info_Fichier))

Dim ft As FILETIME
'**Convertion de la date UTC en temps locale**
Call FileTimeToLocalFileTime(Info_Fichier.ftCreationTime, ft)

Dim st As SYSTEMTIME
'**Convertion en date et heure system**
Call FileTimeToSystemTime(ft, st)

'**Date_File récupére la date sous forme : "11/11/2004"**
Date_File = st.wDay & "/" & st.wMonth & "/" & st.wYear

'**Autre exemple date et heure sous la forme "jeudi 11 novembre 2004 14:11:23"**
Dim FileTimeToDouble As Double
Dim FormatFileDate As String
'Renvoie la date correspondant au jour, au mois, à l'année indiqués etc...
FileTimeToDouble = DateSerial(st.wYear, st.wMonth, st.wDay) + TimeSerial(st.wHour, st.wMinute, st.wSecond)

'Format la date de type sous forme : "jeudi 11 novembre 2004 14:11:23"
FormatFileDate = Format(FileTimeToDouble, "long date") & " " & Format(FileTimeToDouble, "long time")

End Sub

 Conclusion

Rien de difficile mais peut être utile au débutant

Avec qq modifications on peut retrouver la date de modification ou du dernier accès du fichier.


 Sources du même auteur

AJOUTER UNE LIGNE DANS UN FICHIER - API
Source avec Zip Source avec une capture INFO-BULLE PERSONNALISÉE, MULTILIGNES AVEC QQ OPTONS
Source avec Zip Source avec une capture INFORMATION DISQUE DUR
Source avec Zip Source avec une capture ECHANGE DE MESSAGES WINDOWS ENTRE DEUX APPLICATIONS
Source avec Zip Source avec une capture TIRAGE DU LOTO

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) .NET DEPENDENCY VIEWER : ARBRE DES DÉPENDANCES D'UN ASSEMBLY... par ShareVB
Source avec Zip Source .NET (Dotnet) UTILITAIRE SKYDRIVE par MasterShadows
Source avec Zip ROTATION RAPIDE D'IMAGE par trex70
Source avec Zip Source avec une capture ENUMERATION DES PORTS TCP ET IDENTIFCATION DU PROCESS (PID) ... par Renfield
Source avec Zip Source avec une capture MOUSE SPEED AND WEIGHT : RETOUR DE FORCE VIRTUEL ! par ScSami

 Sources en rapport avec celle ci

Source .NET (Dotnet) SETFILEDATE par hugoclavet
Source avec Zip Source avec une capture MODIFICATION DATE FICHIER ET DATE CLICHÉ PHOTO JPG par Le Pierre
Source avec Zip LECTURE ET ÉCRITURE DES DATES D'UN FICHIER par jmfmarques
Source avec Zip Source avec une capture PROGRAMME POUR CHANGER DATE/HEURE DES FICHIERS par appstmd
Source avec Zip UN PROGRAMME QUI AMÉLIORE LES PROPRIÉTÉS DE WINDOWS par WebMagique

Commentaires et avis

Commentaire de general_tao le 16/11/2004 03:56:56

Mais est-ce que on peut changer la date ou est ce qu'il y a un moyen de le changer,

genre de :
jeudi 11 novembre 2004 14:11:23
                         à
dimacnhe 1 janvier 2000 00:00:00

thx d'avance

Commentaire de Nocturne le 16/11/2004 09:23:57

Il y a déjà une source pour modifier les dates notament la date de création : Lire et modifier les attributs de date d'un fichier, Auteur : Big Jim
http://www.vbfrance.com/code.aspx?ID=259

Commentaire de steph12358 le 18/02/2005 10:07:42

Exactement ce que je cherchais.

En plus je ne connaissais pas la syntaxe "dim ... :" permettant de déclarer et d'initialiser une variable en une seule opération. Avec VB on en apprend tous les jours...

Encore merci.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Extraire la date de création et de modification d'un fichier [ par Elmago ] Je voudrais bien savoir si qlq un le sais comment extraire les différentes informations system d'un fichier et précisément la date de création et de Comment récupérer la date de création du fichier Excel actif (VBA) ? [ par loic91 ] Je ne trouve pas la méthode pour récupérer la date de création du fichier actif sous VBA. Pouvez-vous m'aider ?Merci fichier date de création [ par sergio008 ] J'aimerai savoir comment creer un fichier texte ou figure les noms de fichier ainsi que la date de création de l'ensemble d'un répertoire en VB. ?Merc Récupérer la date et l'heure de création d'un fichier [ par niluje ] Bonjour,Bah tout est eit dans le titre ...Je cherche à récupérer la date et l'heure de création d'un fichier .. mais je ne sais comment faire ..niluje Format de date de création d'un fichier imcompréhensible [ par Prog1001 ] bonjour !j'ai trouvé ce code pour rechercher des fichiers et en ressortir certains attributs :http://docvb.free.fr/apidetail.php?idapi=143Certains de modification de la date de création d'un fichier [ par fraizer ] Bonjour.Est-il possible de modifier la date de cr&#233;ation d'un fichier&nbsp;avec VB6 ?Merci. Récupération date de création d'un fichier Excel [ par 306xshdi ] Bonjour,Je voudrais r&#233;cup&#233;rer la date de cr&#233;ation du fichier Excel (que je viens d'ouvrir) en VBA. Malheureusement, je n'y arrive pas. Date de création d'un fichier [ par zegof ] Bonjour tout le mondeJ'aimerais savoir comment extraire la date de creation d'un fichier, en vb6Merci Date de création d'un fichier sur le net. [ par zame ] Voil&#224;, je voulais savoir sy il etait possible d'acceder a ses informations sans telecharger le fichier en question sans passer par un ftp.merci. Création d'un fichier Texte [ par djrodder ] J'aimerais savoir pourquoi dans cette fonction je retrouve des guillemets avant la date et apr&#232;s l'heure ainsi que de chaque cot&#233; du TAB dan


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,449 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales