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 :

Comparer l'attribut 'Modifié le' d'un fichier


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 256
    Par défaut Comparer l'attribut 'Modifié le' d'un fichier
    Bonjour,

    J'ai un thread qui copie tout le contenu d'un dossier qu'on lui passe en paramètre. Je voudrais l'adapter pour faire des copies incrémentielles cad qu'il ne prenne que les fichiers modifiés depuis la dernière copie.
    Pour cela, je pensais que ce bout de code marcherait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(File.GetLastWriteTime(fichier_source)>File.GetLastWriteTime(fichier_copié))
    { File.Copy ... }
    Ceci marche mais dans certains cas précis, par ex lors d'une copie où la source et la destination sont des chemins réseau cela fonctionne pas pour plusieurs fichiers pas tous ( assez étrange ).

    Est-ce que ma méthode est viable, enfin je ne pense pas vu que j'ai des soucis ?

    Merci

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Attention, dans le cas d'un fichier copié, la date de création peut être supérieure à la date de modification (voir screenshot)
    Ton problème est peut-être lié à ça ?

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 256
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Attention, dans le cas d'un fichier copié, la date de création peut être supérieure à la date de modification (voir screenshot)
    Ton problème est peut-être lié à ça ?
    Oui mais pour ma comparaison, je m'appuie sur la date de modification et non sur la date de création.

    edit : Cependant, tu as peut être raison car je viens de réaliser la même comparaison en ne prenant que la date et non la date et l'heure et là ça marche bien. Mais bon le phénomène de recopie devrait se produire sur tous les fichiers, non ?

    Dois-je plutôt m'appuyer sur l'attribut d'archivage du fichier ?

  4. #4
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 256
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(File.GetLastWriteTime(fichier_source).date>File.GetLastWriteTime(fichier_copié).date) 
    {
    if(File.GetLastWriteTime(fichier_source).time>File.GetLastWriteTime(fichier_copié).time)
    {
    File.Copy ... 
    }
    }
    Ce code marche mais on ne peut pas faire mieux ? J'hésite à utiliser l'attribut archive des fichiers.

    Qu'en pensez-vous ?

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Euh, je vois pas trop l'intérêt de cette modif... si date1 > date2, ça ne sert à rien de vérifier que heure1 > heure2...

  6. #6
    Membre émérite
    Inscrit en
    Octobre 2006
    Messages
    587
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2006
    Messages : 587
    Par défaut
    Tu peux te baser aussi sur la taille du fichier mais bon ça marche pas si l'utilisateur ne rajoute rien...

    Sinon pourquoi tu prends pas le problème à l'inverse c'est à dire que tu vérifie que leur date de modification est identique au lieu de comparer leur dates...

  7. #7
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 256
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Euh, je vois pas trop l'intérêt de cette modif... si date1 > date2, ça ne sert à rien de vérifier que heure1 > heure2...
    C'est vrai quand on sauvegarde une seule fois par jour ce qui est le cas .
    Prenons le cas où l'on sauvegarde plusieurs fois par jour, un fichier peut être modifié dans la journée donc il n'est pas inutile de comparer l'heure.

    Enfin dans mon cas, c'est inutile effectivement.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/01/2015, 07h29
  2. Lire et modifier les propriétés des fichiers Office
    Par SilkyRoad dans le forum Contribuez
    Réponses: 4
    Dernier message: 18/09/2006, 22h25
  3. Réponses: 7
    Dernier message: 07/01/2006, 15h18
  4. Réponses: 24
    Dernier message: 07/12/2005, 10h37
  5. [VB6] Ecrire/Modifier/Effacer ds un fichier text-4 Chs/Lg
    Par Jonathan_Korvitch dans le forum VB 6 et antérieur
    Réponses: 18
    Dernier message: 24/12/2002, 18h54

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