Dézipper toutes les archives zip d'un répertoire
bonjour,
j'ai un dossier avec plusieurs archives zip et j'aimerai les dézipper en java.
pour l'instant j'ai une fonction pour dézipper une archive.
est-ce que vous pouvez m'aider pour qu'elle dézippe toutes les archives et que les fichiers extraites soient dans des dossiers différentes(nom de dossier = nom de l'archive) ?:help:
voici ma fonction actuel d'extraction :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
public void unZipIt(String zipFile, String outputFolder)
{
byte[] buffer = new byte[1024];
try
{
ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile));
ZipEntry ze = zis.getNextEntry();
while (ze != null)
{
String fileName = ze.getName();
File newFile = new File(outputFolder + File.separator + fileName);
System.out.println("file unzip : " + newFile.getAbsoluteFile());
if (ze.isDirectory())
{
String temp = newFile.getCanonicalPath();
new File(temp).mkdir();
}
else
{
FileOutputStream fos = new FileOutputStream(newFile);
int len;
while ((len = zis.read(buffer)) > 0)
{
fos.write(buffer, 0, len);
}
fos.close();
}
ze = zis.getNextEntry();
}
zis.closeEntry();
zis.close();
System.out.println("Extraction complétée");
}
catch (IOException ex)
{
ex.printStackTrace();
}
} |
voici l'appel :
Code:
this.zip.unZipIt("C:\\Users\\moi\\Desktop\\bilans batch satelit 2016\\sauvegarde_bilans_batch_satelit_2016-01.zip", "C:\\Users\\moi\\Desktop\\bilans batch satelit 2016\\");