Sauvegarder la date de creation d'un fichier

Contenu du snippet

Lors d'une copie ou autre action sur un fichier, la date de création est remplacée par la date de cette action.
Voici donc un snippet qui sauvegarde la date de création de ce fichier.
J'ai pris comme action une copie de fichier.

Imports System.IO

 Private Sub Copyfile(ByRef cheminOrigine As String, ByRef cheminDestination As String)
        Dim fi As New IO.FileInfo(cheminOrigine)
        Try
            If File.Exists(cheminDestination) Then Exit Sub
            fi.CopyTo(cheminDestination, True)
            Sauvegarderdatecreation(cheminOrigine, cheminDestination)
            MessageBox.Show("Opération réussie", "Copie fichier", MessageBoxButtons.OK, MessageBoxIcon.Information)
        Catch ex As IOException
            MessageBox.Show(ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try
    End Sub
    Private Sub Sauvegarderdatecreation(ByRef cheminOrigine As String, ByRef cheminDestination As String)
        Dim t As System.IO.FileInfo
        Dim datecreation As Date
        'recup les info sur le fichier
        t = New System.IO.FileInfo(cheminOrigine)
        datecreation = t.CreationTime
        If (System.IO.File.GetAttributes(cheminOrigine) And FileAttributes.ReadOnly) = FileAttributes.ReadOnly Then 'fichier lecture seule
            'Normale
            System.IO.File.SetAttributes(cheminOrigine, FileAttributes.Archive)
        End If
        System.IO.File.SetCreationTime(cheminDestination, datecreation)
       End Sub


Et pour appeler

 Dim cheminOrigine As String = "chemin complet fichier origine"
        Dim cheminDestination As String = "chemin complet fichier destination"
        If File.Exists(cheminOrigine) Then
            Copyfile(cheminOrigine, cheminDestination)
        End If

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.