Maison >développement back-end >Tutoriel Python >Comment puis-je obtenir de manière fiable les temps de création et de modification de fichiers sur différents systèmes d'exploitation ?
Récupération de la date/heure de création et de modification de fichiers multiplateformes
L'obtention des dates/heures de création et de modification de fichiers sur différents systèmes d'exploitation peut être une tâche complexe.
Modification Dates
Obtenir les dates de modification de fichiers sur plusieurs plates-formes est relativement simple en utilisant os.path.getmtime(), qui fournit l'horodatage Unix de la dernière modification.
Dates de création
Pour les dates de création de fichiers, le processus devient plus complexe en raison des spécificités de la plateforme. implémentations :
Code multiplateforme
En combinant ces approches spécifiques à la plateforme, un L'extrait de code de la plateforme est le suivant :
import os import platform def creation_date(path_to_file): """ Try to get the date that a file was created, falling back to when it was last modified if that isn't possible. See http://stackoverflow.com/a/39501288/1709587 for explanation. """ if platform.system() == 'Windows': return os.path.getctime(path_to_file) else: stat = os.stat(path_to_file) try: return stat.st_birthtime except AttributeError: # We're probably on Linux. No easy way to get creation dates here, # so we'll settle for when its content was last modified. return stat.st_mtime
Ce code vérifie d'abord la plateforme pour appliquer la méthode appropriée. Sous Windows, il utilise os.path.getctime(), tandis que sur Mac et certains systèmes d'exploitation Unix, il tente de récupérer la date de création en utilisant .st_birthtime. Pour Linux, on revient à la date de modification obtenue via .st_mtime.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!