【发布时间】:2013-12-17 23:44:41
【问题描述】:
所以我已经使用DotNetZip Library 有一段时间了,它工作得很好,直到昨天我最大化了 zipfile 的大小。在任何一天,我都需要压缩 PDF 并将它们传输到仅接受 zip 文件的 SFTP 站点。 PDF 的数量从几百、几千到超过 10K 不等。昨天 DotNetZip 进程中断时,我有大约 24K PDF。有一种方法可以使用 DotNetZip 库拆分 zip 文件,但由于某种原因,SFTP 服务器上使用的系统无法处理拆分的 zip 文件。
抓取 5K(或任何其他数量的文件)、压缩、删除这些文件并抓取另一个 5K、压缩、删除并重复该过程直到压缩所有文件的最佳方法是什么?
这是我当前的压缩过程代码...
Dim PathToPDFs As String = "C:\Temp" 'PDF LOCATION
Using Zip As ZipFile = New ZipFile()
Zip.AddSelectedFiles("(name = *.pdf)", PathToPDFs, "", True)
Zip.CompressionMethod = CompressionMethod.Deflate
Zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression
Zip.Save("C:\Temp\Zipfile.zip")
End Using
【问题讨论】:
-
也许离题了,但是为什么需要压缩 PDF 文件呢?无论如何它们都被压缩了,因此您不会节省太多空间。
-
显然我要上传到的这个 SFTP 站点只接受 zip 文件。另一端有一个自动化流程可以提取这些 PDF。
-
好的,有道理,检查我的答案。