热门IT资讯网

Java如何压缩文件

发表于:2024-11-23 作者:热门IT资讯网编辑
编辑最后更新 2024年11月23日,本篇内容介绍了"Java如何压缩文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:publ

本篇内容介绍了"Java如何压缩文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

代码如下:

public static void zipFilePip() {    long beginTime = System.currentTimeMillis();    try(WritableByteChannel out = Channels.newChannel(new FileOutputStream(ZIP_FILE))) {        Pipe pipe = Pipe.open();        //异步任务        CompletableFuture.runAsync(()->runTask(pipe));        //获取读通道        ReadableByteChannel readableByteChannel = pipe.source();        ByteBuffer buffer = ByteBuffer.allocate(((int) FILE_SIZE)*10);        while (readableByteChannel.read(buffer)>= 0) {            buffer.flip();            out.write(buffer);            buffer.clear();        }    }catch (Exception e){        e.printStackTrace();    }    printInfo(beginTime);}//异步任务public static void runTask(Pipe pipe) {    try(ZipOutputStream zos = new ZipOutputStream(Channels.newOutputStream(pipe.sink()));            WritableByteChannel out = Channels.newChannel(zos)) {        System.out.println("Begin");        for (int i = 0; i < 10; i++) {            zos.putNextEntry(new ZipEntry(i+SUFFIX_FILE));            FileChannel jpgChannel = new FileInputStream(new File(JPG_FILE_PATH)).getChannel();            jpgChannel.transferTo(0, FILE_SIZE, out);            jpgChannel.close();        }    }catch (Exception e){        e.printStackTrace();    }}

"Java如何压缩文件"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0