whyclxw
4 天以前 51726e56a2d4b55f0e37b2b22adc4413113d43d0
src/main/java/com/whyc/service/ZipAndRarService.java
@@ -3,12 +3,14 @@
import com.whyc.dto.FileDirPath;
import com.whyc.dto.Response;
import com.whyc.pojo.FileMessage;
import com.whyc.util.FileUtil;
import com.whyc.util.ZipAndRarUtil;
import org.apache.commons.compress.archivers.ArchiveException;
import org.springframework.stereotype.Service;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
@Service
@@ -31,4 +33,20 @@
        }
        return new Response().setII(1,list!=null,list,"压缩文件信息");
    }
    public Response decompress(String compressedFileUrl) throws ArchiveException, IOException, InterruptedException {
        String fileSuffix = (compressedFileUrl.substring(compressedFileUrl.lastIndexOf(".")+1));
        List<String> resList = new LinkedList<>();
        if(fileSuffix.equals("zip")||fileSuffix.equals("rar")) {
            List<String> decompressList = FileUtil.decompress(compressedFileUrl);
            for (String decompress : decompressList) {
                resList.add(decompress.substring(decompress.indexOf("doc_file")));
            }
        }else{
            return new Response().set(1,false,fileSuffix+"类型压缩包暂不支持解压");
        }
        return new Response().setII(1,true, resList,null);
    }
}