[RESOLU] Compresser un dossier (répertoire)

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

[RESOLU] Compresser un dossier (répertoire)

Message par omega »

Bonsoir

Depuis plus de 2 heures en train d'essayer de compresser un dossier mais rien à faire. Où se trouve l'erreur SVP?

Merci

Code : Tout sélectionner

UseZipPacker()
 
dossier$ = GetCurrentDirectory()
 Dossier$ = PathRequester("Choisissez un dossier à compresser", dossier$)
 If Dossier$
    ;Récupérer le nom du dossier (sans chemin)
     For k=1 To CountString(dossier$,"\")
       NomDossier$=StringField(dossier$, k, "\")
     Next
        
     ZipFile$=NomDossier$+".zip"
     Debug ZipFile$
     
     ; Créer le fichier compressé
     If CreatePack(1, ZipFile$) 
  
    ; Ajouter vos fichiers 
     If ExamineDirectory(0, dossier$, "*.*")  
        While NextDirectoryEntry(0)
          If DirectoryEntryType(0) = #PB_DirectoryEntry_File
             File$=DirectoryEntryName(0)
             AddPackFile(1, file$,file$)  
          EndIf
        Wend
        FinishDirectory(0)
      EndIf
      ClosePack(1) 
  EndIf
  
Dernière modification par omega le jeu. 11/nov./2021 23:24, modifié 1 fois.
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

Re: Compresser un dossier (répertoire)

Message par omega »

Je ne comprends pas pourquoi 2 fichers seulement sont compresssés dans le dossier alors qu'il y a plus de 20 fichiers dans le répertoire à compresser
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: Compresser un dossier (répertoire)

Message par venom »

Un peut de modif et dépoussiérage :lol:

Code : Tout sélectionner

UseZipPacker()
 
dossier$ = GetCurrentDirectory()
 Dossier$ = PathRequester("Choisissez un dossier à compresser", dossier$)

   ;Récupérer le nom du dossier (sans chemin)
  NomDossier$ = Left(GetPathPart(Dossier$), Len(Dossier$)-1)

   ; Créer le fichier compressé
   If CreatePack(1, NomDossier$+".zip") 
  
    ; Ajouter vos fichiers 
     If ExamineDirectory(0, dossier$, "*.*")  
       While NextDirectoryEntry(0)
          If DirectoryEntryType(0) = #PB_DirectoryEntry_File
            File$=DirectoryEntryName(0)
            AddPackFile(1, dossier$+file$,file$)  ; ne pas oublier dans le 2eme parametre de renvoyer le chemin complet du fichier ;) Et dans le 3eme uniquement le nom du fichier
          EndIf
        Wend
        FinishDirectory(0)
      EndIf
      ClosePack(1) 
   EndIf 





@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

Re: Compresser un dossier (répertoire)

Message par omega »

Merci (c'est ^pourtant ce que je pensais) car cela s'explique: il vient de m'afficher 2 fichiers (debug après pack) et ces fichiers se trouvent au même niveau que le dossier à compresser et non pas DANS ce dossier

Merci encore venom
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: [RESOLU] Compresser un dossier (répertoire)

Message par venom »

De rien






@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Répondre