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) ?
voici ma fonction actuel d'extraction :
Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
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 JAVA : Sélectionner tout - Visualiser dans une fenêtre à part 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\\");
Partager