Comment supprimer ou remplacer un fichier dans une archive zip?

je crée un programme en Python qui télécharge un ensemble de fichiers et les met dans une archive avec le module zipfile.

j'ai déjà trouvé comment ajouter à l'archive, mais il y a des cas où les fichiers de l'archive existent déjà et devraient être réécrits.

actuellement, si j'ajoute un fichier existant à l'archive, je reçois un duplicata.

est-ce que quelqu'un sait comment supprimer un fichier dans une archive?

21
demandé sur Rob Kennedy 2012-12-17 19:46:30

1 réponses

de http://docs.python.org/2/library/zipfile

ZipFile.namelist()
Return a list of archive members by name.

il est donc trivial de mettre la main sur la liste des membres avant de l'ajouter au fichier et d'effectuer une opération de vérification par rapport à la liste des membres existants dans l'archive.

de plus: la suppression d'un fichier ZIP n'est pas supportée. Vous devez écrire une nouvelle archive si nécessaire, copiez sur les fichiers existants et omettez le fichier à supprimer.

voir aussi

supprimer le fichier de zipfile avec le Module de ZipFile

13
répondu Andreas Jung 2017-05-23 11:45:34