Bonjour les amis !

Voila je cherche à compresser un fichier en plusieurs partie à la manière 7-zip (ou autre)

Pour la compression pas de problème:
Code : 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
 
		ArchiveOutputStream aos = null;
		try {
			File file = new File("k:/bigfile.txt");
			InputStream is = new FileInputStream(file);
 
			OutputStream out = new FileOutputStream("k:/test.zip");
			aos = new ArchiveStreamFactory().createArchiveOutputStream(ArchiveStreamFactory.ZIP, out);
 
			ZipArchiveEntry zae = new ZipArchiveEntry(file, file.getName());
			aos.putArchiveEntry(zae);
			IOUtils.copy(is, aos);
			aos.closeArchiveEntry();
 
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (aos != null) {
				try {
					aos.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
mais comment faire pour spliter mon gros fichier de 1 Go en plusieurs de 10 Mo. Pour info j'utilise la librairy commons-compress.

Le but est que les fichiers de 10Mo puissent aussi être regrouper via des outils externes comme 7-zip.

Est ce que je dois faire le split moi meme, c'est à dire que lorsque mon flux (en ecriture) vaut 10Mo, il faut en créer un autre ?

Celestin.