Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

écrires plusieurs fichiers dans un fichier zip

3 réponses
Avatar
cyrille
Bonjour,

Avec java.util.zip.*
J'arrive sans problème à écrire des datas dans un fichier zip,
mais pas à construire une archive zip qui contient plusieurs fichiers.

J'arrive pas à comprendre comment écrire des fichiers. La classe ZipFile semble seulement lire et les autres ne gèrent
que des flux...

Il y a qlq chose qui m'échappe.
Alors si vous pouviez m'éclairez s'il vous plait,
j'en serais très soulagé ;o)

cyrille

3 réponses

Avatar
Yves Martin
cyrille writes:

Bonjour,

Avec java.util.zip.*
J'arrive sans problème à écrire des datas dans un fichier zip,
mais pas à construire une archive zip qui contient plusieurs fichiers.

J'arrive pas à comprendre comment écrire des fichiers. La classe
ZipFile semble seulement lire et les autres ne gèrent que des flux...

Il y a qlq chose qui m'échappe.
Alors si vous pouviez m'éclairez s'il vous plait,
j'en serais très soulagé ;o)


Il faut utiliser ZipOutputStream et insérer des ZipEntry pour chaque
fichier avec putNextEntry/closeEntry

Bonne chance
--
Yves Martin

Avatar
cyrille
Avec java.util.zip.*
J'arrive sans problème à écrire des datas dans un fichier zip,
mais pas à construire une archive zip qui contient plusieurs fichiers.


Il faut utiliser ZipOutputStream et insérer des ZipEntry pour chaque
fichier avec putNextEntry/closeEntry



Merci beaucoup,
Je vais revoir la doc de l'api.

Peut on faire de même avec GZIPOutputStream ?

cyrille


Avatar
Yves Martin
cyrille writes:

Avec java.util.zip.*
J'arrive sans problème à écrire des datas dans un fichier zip,
mais pas à construire une archive zip qui contient plusieurs fichiers.
Il faut utiliser ZipOutputStream et insérer des ZipEntry pour chaque

fichier avec putNextEntry/closeEntry



Merci beaucoup,
Je vais revoir la doc de l'api.

Peut on faire de même avec GZIPOutputStream ?


Non, un gzip est un flux compressé sans structure de stockage de
fichier (ZipOutputStream utilise le format PKzip)

Sous Linux, on fait des tar.gz (tar pour regrouper les fichiers, gz
pour compresser l'ensemble). bzip2 compresse encore mieux mais est
moins rapide et moins répandu - la preuve: il n'est pas fourni dans
Java.
--
Yves Martin