longshihan1 / AndZIP

android中实现压缩

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

zip

内部包含ZIP,GZIP压缩实现(没有解压操作)。

‘’‘

new ZIPFileUtils.Builder()
                        .setStragy(ZipStragy.ZIP)
                        .addEndFilter(".gz")
                        .addEndFilter(".zip")
                        .setListener(new ZipFileListener() {
                            @Override
                            public void getZipFilePath(String zipFilePath) {
                                Log.d("测试压缩", zipFilePath);
                            }

                            @Override
                            public void failureZip() {
                                Log.d("测试压缩", "失败");
                            }
                        })
                        .setOrginFilePath("/storage/emulated/0/flog/com.longshihan.flog")
                        .setDeleteOriginFile(true)
                        .build();

’‘’�

采用Builder建筑者模式,内部的实现也是遵循此规范,方便书写。可以不实现ZIPFileUtils,只实现内部的也可,代码如下:�

‘’‘

 ZipUtils.getInstance().setSourceFilePath(getOrginFilePath())//原始路径
                              .setZipFilePath(getZipFilePath())//目标路径
                              .setDeleteOriginFile(isDeleteOriginFile())//是否删除压缩过的文件
                              .setEndFilters(endLists)//遵循尾过滤
                              .setContainerFilters(containerLists);//遵循存在过滤
                      String path = ZipUtils.getInstance().save2ZIPFile();

’‘’

其中默认情况下(不输入目标路径)GZIP压缩后的格式是�.gz,ZIP压缩后的格式是.zip。其中没有实现动态权限部分。

About

android中实现压缩


Languages

Language:Java 100.0%