constructor
Şöyle yaparız.
Şöyle yaparız.
ZipEntry nesnesini eklememizi sağlar. Şöyle yaparız.
Lİste olarak verilen dosyaları herhangi bir OutputStream'e ziplemek için şöyle yaparız.
Şöyle yaparız.
FileOutputStream fos =new FileOutputStream(...);
ZipOutputStream zos = new ZipOutputStream(fos);
Belleğe yazmak için şöyle yaparız.ZipOutputStream zos = new ZipOutputStream(new ByteArrayOutputStream());
Bir stream olduğu için şöyle yaparız.try(ZipOutputStream zip = new ZipOutputStream(new FileOutputStream("dest.zip"))){
//add file to zip
}
close metodu
Şöyle yaparız.zos.close();
closeEntry metoduŞöyle yaparız.
zos.closeEntry();
putNextEntry metoduZipEntry nesnesini eklememizi sağlar. Şöyle yaparız.
File file = ...;
ZipEntry zipEntry = new ZipEntry(file.toString());
zos.putNextEntry(zipEntry);
Şöyle yaparız.FileInputStream in = new FileInputStream(srcFile);
zip.putNextEntry(new ZipEntry(path + "/" + folder.getName()));
while ((len = in.read(buf)) > 0) {
zip.write(buf, 0, len);
}
write metodu
Şöyle yaparız.byte[] buf = new byte[1024];
zos.write(buf, 0, len);
Diğer
Lİste olarak verilen dosyaları herhangi bir OutputStream'e ziplemek için şöyle yaparız.
public void compressFileList(List<File> fileList, OutputStream outputStream)
throws IOException {
try (ZipOutputStream zipOutputStream =
new ZipOutputStream(new BufferedOutputStream(outputStream));
for (File file: fileList) {
try (FileInputStream fileInputStream = new FileInputStream(file)) {
ZipEntry zipEntry = new ZipEntry(file.getName());
zipOutputStream.putNextEntry(zipEntry);
byte[] tmp = new byte[4*1024];
int size = 0;
while((size = fileInputStream.read(tmp)) != -1){
zipOutputStream.write(tmp, 0, size);
}
zipOutputStream.flush();
} catch (FileNotFoundException e) { // Maybe skip not found files.
Logger.log(Level.INFO, "File not found {}", file.getPath());
}
} //for
} //try
}
Çağırmak için şöyle yaparız.compressFileList(fileList, servletRequest.getOutputStream())) {
Hiç yorum yok:
Yorum Gönder