|
| Problème ZIP en Windev 24 ou antérieur |
| Iniciado por vincent, 30,jun. 2019 21:57 - 5 respuestas |
| |
| | | |
|
| |
| Publicado el 30,junio 2019 - 21:57 |
Bonjour à tous, J'ai besoin de ziipper .en un zip, l'ensemble des fichier TXT se trouvant dans un seul répertoire En utilisant le mode commande de 7z, c'est simple et gratuit. POUR TOUTE CHAÎNE sUnFichier DE ResListeFichier SEPAREE PAR RC sFichier=sUnFichier // fichier source LanceAppli(gsRepZipExe+"7z a -bd "+"Toto.zip"+" "+sFichier) FIN
Pour éviter d'utiliser un composant externe 7z, je voudrais faire la même chose en WinDev Le problème est que le nom du fichier sFichier change , il faut que je refaire zipcrée(MonAchive) qui efface le contenu du fichier TOTO.zip. En final, je n'ai que le dernier fichier txt dans Toto.zip. ZipAjouteFichier n'ajoute pas mais il écrase.
Merci de votre aide |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 24 mensajes |
|
| Publicado el 01,julio 2019 - 08:06 |
Bonjour,
zipOuvre ne convient-il pas ? |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2.321 mensajes |
|
| Publicado el 01,julio 2019 - 08:41 |
Bonjour,
MonArchive est un zipArchive
ResCréation = zipCrée(MonArchive, "C:\Temp\Archive.zip") SI ResCréation = 0 ALORS POUR TOUTE chaîne sUnFichier de ResListeFichier SEPAREE PAR RC ResAjoutFichier = zipAjouteFichier(MonArchive, ... "C:\MonRépertoire\MesFichiers\sUnFichier", zipDisque) FIN
SI ResAjoutFichier <> 0 ALORS Erreur(zipMsgErreur(ResAjoutFichier)) FIN FIN
-- Bon dev, Jean-Pierre |
| |
| |
| | | |
|
| | |
| |
| Publicado el 01,julio 2019 - 09:05 |
Bonjour,
Au fait, pour simplifier ma demande, j'ai omis un détail important. Chaque fichier TXT comporte dans son nom la date du fichier. Exemples : Fic1_20190615.txt, Fic2_20190615.txt, fic1_20190616.txt ….. Les fichiers de dates différentes ne sont pas triés. J'ai besoin donc un zip groupé par date. Voici le code plus détaillé de 7z : POUR TOUTE CHAÎNE sUnFichier DE ResListeFichier SEPAREE PAR RC sFichier=sUnFichier // fichier source sDateFic=pExtactDate(sfichier) //me donne par exemple "20190615" // je fabriques mon fichier zip de destinaton sFIcZip="MonArchive_"+sdateFic LanceAppli(gsRepZipExe+"7z a -bd "+sFicZip+" "+sFichier) // 7z ajoute le fichier en cours dans le sficZip correspondant sans se poser la queston FIN
En WinDev, si les dates sont triés, il n'y a pas trop de souci, car je crée un archive par zipcrée(Arcive,sficZi) et zipAjouteFichier y ajoute bien le fichier en cours
Par contre si un autre fichier qui arrive avec une date qui existe dans le zip avant.
Comme la date a changé par rapport à la précédente, je suis obligé de créer un nouveau archive avec une date qui existe.
Cette action création me vide le zip existant.
C'est donc là le problème !
Merci de votre aide
Vincent |
| |
| |
| | | |
|
| | |
| |
| Publicado el 01,julio 2019 - 10:24 |
Vincent a exprimé avec précision :
Bonjour à tous, J'ai besoin de ziipper .en un zip, l'ensemble des fichier TXT se trouvant dans un seul répertoire En utilisant le mode commande de 7z, c'est simple et gratuit. POUR TOUTE CHAÎNE sUnFichier DE ResListeFichier SEPAREE PAR RC sFichier=sUnFichier // fichier source LanceAppli(gsRepZipExe+"7z a -bd "+"Toto.zip"+" "+sFichier) FIN
Pour éviter d'utiliser un composant externe 7z, je voudrais faire la même chose en WinDev Le problème est que le nom du fichier sFichier change , il faut que je refaire zipcrée(MonAchive) qui efface le contenu du fichier TOTO.zip. En final, je n'ai que le dernier fichier txt dans Toto.zip. ZipAjouteFichier n'ajoute pas mais il écrase.
Merci de votre aide
bonjour,
un peu de recherche dans l'aide en ligne en tapant simplement zip il vous est proposé "Zip, Ajouter des fichiers" et de là vous arrivez sur la page : https://doc.pcsoft.fr/fr-FR/?3082038&name=zipAjouteListeFichier
donc il serait intéressant de faire un minimum de recherche avant de poser une question
-- Cordialement JeAn-PhI |
| |
| |
| | | |
|
| | |
| |
| Publicado el 02,julio 2019 - 12:47 |
Bonjour Mr BSC,
Le code ZipOuvre est la solution.
Je considère que ma demande a trouvé la solution
Merci à tous ceux qui ont répondu et en particulier, merci à Mr BSC qui m' a donné la solution.
Bien cordialement Vincent |
| |
| |
| | | |
|
| | | | |
| | |
|