我有一个大文件夹,我想在保存子文件夹层次结构的同时发送它的压缩版本。
目前我正在通过创建一个大的 zip 文件并发送它来做到这一点。
我正在寻找一种将文件夹内容写入某些输出流的方法,该输出流将被重定向到套接字输出流。
我的动机是避免在运行时将大文件保存在我的机器中
我知道如何为单个文件执行此操作,但不知道如何处理具有许多子文件夹的文件夹并保存内部层次结构......
谢谢!
我有一个大文件夹,我想在保存子文件夹层次结构的同时发送它的压缩版本。
目前我正在通过创建一个大的 zip 文件并发送它来做到这一点。
我正在寻找一种将文件夹内容写入某些输出流的方法,该输出流将被重定向到套接字输出流。
我的动机是避免在运行时将大文件保存在我的机器中
我知道如何为单个文件执行此操作,但不知道如何处理具有许多子文件夹的文件夹并保存内部层次结构......
谢谢!
有点不清楚你在追求什么,因为gzip
没有文件的概念 - 只是要压缩的字节 - 你需要一种存档格式,比如tar
将一堆文件和目录组合成一个流,然后你可以 gzip 。
如果您只想要一些压缩存档格式,JDK 的ZipOutputStream将允许您使用 zip 压缩。
如果您特别需要gzip
格式,则有许多tar 输出流的实现- 使用其中一种并将其通过管道传输到 JDK 的gzip 输出流中。