如何以编程方式压缩特定文件

时间:2017-07-29 09:39:47

标签: android zip

如何在android中压缩特定文件?例如,我只想在手机存储中压缩随机文件,如video.mp4,music.mp3,word.docx,image.jpeg。我试图在这里搜索相同的问题,他们总是说尝试此链接Zipping Files with Android (Programmatically),但页面已找不到。你有替代链接吗?

提前谢谢!我很感激。

1 个答案:

答案 0 :(得分:2)

查看ZipOutputStream

您打开一个新的FileOutputStream来编写一个文件,然后是一个ZipOutputStream来编写一个ZIP。然后为要压缩的每个文件创建ZipEntrys并编写它们。不要忘记关闭ZipEntrys和溪流。

例如:

// Define output stream
FileOutputStream fos = new FileOutputStream("zipname.zip");
ZipOutputStream zos = new ZipOutputStream(fos);

// alway use a try catch block and close the zip in the finally
try {
    ZipEntry zipEntry = new ZipEntry("entryname.txt");
    zos.putNextEntry(zipEntry);
    // write any content you like
    zos.write("file content".getBytes());
    zos.closeEntry();
}
catch (Exception e) {
    // unable to write zip
}
finally {
    zos.close();
}

希望它有所帮助!