17 FileOutputStream fOut =
null;
18 BufferedOutputStream bOut =
null;
19 GzipCompressorOutputStream gzOut =
null;
20 TarArchiveOutputStream tOut =
null;
22 fOut =
new FileOutputStream(
new File(destDir));
23 bOut =
new BufferedOutputStream(fOut);
24 gzOut =
new GzipCompressorOutputStream(bOut);
25 tOut =
new TarArchiveOutputStream(gzOut);
26 File source =
new File(srcDir);
27 if (!source.exists()) {
28 System.out.println(
"Input directory does not exist..");
31 File files[] = source.listFiles();
32 for (File file : files) {
33 System.out.println(
"Adding File: " + source.getParentFile().toURI().relativize(file.toURI()).getPath());
34 TarArchiveEntry entry =
new TarArchiveEntry(file, source.getParentFile().toURI().relativize(file.toURI()).getPath());
35 tOut.putArchiveEntry(entry);
36 FileInputStream fi =
new FileInputStream(file);
37 BufferedInputStream sourceStream =
new BufferedInputStream(fi,
BUFFER);
39 byte data[] =
new byte[
BUFFER];
40 while ((count = sourceStream.read(data, 0,
BUFFER)) != -1) {
41 tOut.write(data, 0, count);
44 tOut.closeArchiveEntry();
47 System.out.println(
"tar.gz file created successfully!!");
49 System.out.println(e.toString());