草庐IT

dotnetzip

全部标签

c# - 如何使用太长/重复的路径处理解压缩 ZipFile

在Windows中解压缩文件时,我偶尔会遇到路径问题对于Windows来说太长了(但在创建该文件的原始操作系统中没问题)。由于不区分大小写而“重复”使用DotNetZip,ZipFile.Read(path)每当读取具有这些问题之一的zip文件时,调用就会出错。这意味着我什至无法尝试过滤掉它。using(ZipFilezip=ZipFile.Read(path)){...}处理读取这类文件的最佳方法是什么?已更新:示例zip来自这里:https://github.com/MonoReports/MonoReports/zipball/master重复:https://github.co

c# - 使用 C# 上传到服务器后,Zip 文件已损坏

我正在尝试使用C#(Framework4)上传zip文件到服务器,下面是我的代码。stringftpUrl=ConfigurationManager.AppSettings["ftpAddress"];stringftpUsername=ConfigurationManager.AppSettings["ftpUsername"];stringftpPassword=ConfigurationManager.AppSettings["ftpPassword"];FtpWebRequestrequest=(FtpWebRequest)WebRequest.Create(ftpUrl+"T

c# - DotNetZip:如何提取文件,但忽略压缩文件中的路径?

尝试将文件提取到给定文件夹,忽略zip文件中的路径,但似乎没有办法。鉴于其中实现的所有其他好东西,这似乎是一个相当基本的要求。我错过了什么?代码是-using(Ionic.Zip.ZipFilezf=Ionic.Zip.ZipFile.Read(zipPath)){zf.ExtractAll(appPath);} 最佳答案 虽然您不能为对Extract()或ExtractAll()的特定调用指定它,但ZipFile类有一个FlattenFoldersOnExtract字段。当设置为true时,它​​将所有提取的文件展平到一个文件夹中

c# - 使用 ASP.NET Web API, Controller 如何返回使用 DotNetZip 库压缩的流图像集合?

我如何创建一个WebAPIController来生成并返回从内存中JPEG文件(MemoryStream对象)集合流式传输的压缩zip文件。我正在尝试使用DotNetZip库。我找到了这个例子:https://web.archive.org/web/20211020131216/https://www.4guysfromrolla.com/articles/092910-1.aspx#postadlink。但是Response.OutputStream在WebAPI中不可用,因此该技术不太有效。因此,我尝试将zip文件保存到新的MemoryStream;但它扔了。最后,我尝试使用Pus

c# - 将文件添加到现有Zip中-性能问题

我有一个WCFWeb服务,可将文件保存到文件夹(大约200,000个小文件)。之后,我需要将它们移至另一台服务器。我发现的解决方案是将它们压缩然后移动。当我采用此解决方案时,我使用了20,000个文件进行了测试,压缩20,000个文件仅花费了大约2分钟的时间,并且移动zip确实非常快。但是在生产中,压缩200,000个文件需要2个多小时。这是我压缩文件夹的代码:using(ZipFilezipFile=newZipFile()){zipFile.UseZip64WhenSaving=Zip64Option.Always;zipFile.CompressionLevel=Compress

c# - DotNetZip - 压缩时重命名 zip 文件中的文件条目

使用DotNetZip,是否可以压缩文件,使zip列出文件的文件名与磁盘上的文件名不同?例如,我想将myFile.txt添加到一个zip文件中,但我希望它被称为otherFile.txt。 最佳答案 来自DotNetZip常见问题解答:Addanentry,overridingitsnameinthearchiveusing(ZipFilezip1=newZipFile()){zip1.AddFile("myFile.txt").FileName="otherFile.txt";zip1.Save(archiveName);}

c# - DotNetZip - 压缩时重命名 zip 文件中的文件条目

使用DotNetZip,是否可以压缩文件,使zip列出文件的文件名与磁盘上的文件名不同?例如,我想将myFile.txt添加到一个zip文件中,但我希望它被称为otherFile.txt。 最佳答案 来自DotNetZip常见问题解答:Addanentry,overridingitsnameinthearchiveusing(ZipFilezip1=newZipFile()){zip1.AddFile("myFile.txt").FileName="otherFile.txt";zip1.Save(archiveName);}

c# - DotNetZip 添加文件而不创建文件夹

using(ZipFilezip=newZipFile()){foreach(stringfileinDirectory.GetFiles(folder)){zip.AddFile(file,Path.GetFileName(file));}zip.Save("test.zip"));}每次我添加一个文件时,它都会为其创建一个新的子文件夹。所以我想结束:test.zip-myDoc.doc-myPdf.pdf但我最终得到的是:test.zip-myDoc.doc-myDoc.doc-myPdf.pdf-myPdf.pdf 最佳答案

c# - DotNetZip 添加文件而不创建文件夹

using(ZipFilezip=newZipFile()){foreach(stringfileinDirectory.GetFiles(folder)){zip.AddFile(file,Path.GetFileName(file));}zip.Save("test.zip"));}每次我添加一个文件时,它都会为其创建一个新的子文件夹。所以我想结束:test.zip-myDoc.doc-myPdf.pdf但我最终得到的是:test.zip-myDoc.doc-myDoc.doc-myPdf.pdf-myPdf.pdf 最佳答案

c# - .Extract 上的 DotNetZip BadReadException

我有一个奇怪的文件,当使用DotNetZip压缩时,它创建了一个“无法解压缩”的存档。当我尝试使用7zip解压缩它时,它失败并显示CRCfailedin'AjaxControlToolkit.dll'。文件已损坏。当我用7zip手动压缩它时,它可以很好地解压缩。有没有人遇到过DotNetZip无法正确压缩简单二进制文件的情况?或者我是否错误地使用了DotNetZip?https://dl.dropbox.com/u/65419748/AjaxControlToolkit.dllusingSystem.IO;usingIonic.Zip;namespaceConsoleApplicati
12