Tag: zip

如何从C#内存中的文件创建ZipArchive?

是否有可能从内存中的文件(而不是实际上在磁盘上)创建ZipArchive。 以下是用例:在IEnumerable变量中接收多个文件。 我想使用ZipArchive将所有这些文件压缩在一起。 问题是ZipArchive只允许CreateEntryFromFile ,它需要一个文件路径,因为我只有内存中的文件。 问题:有没有办法在ZipArchive使用’stream’创建’entry’,这样我就可以直接在zip中输入文件的内容? 我不想先保存文件,创建zip(从保存文件的路径),然后删除单个文件。 这里, attachmentFiles是IEnumerable using (var ms = new MemoryStream()) { using (var zipArchive = new ZipArchive(ms, ZipArchiveMode.Create, true)) { foreach (var attachment in attachmentFiles) { zipArchive.CreateEntryFromFile(Path.GetFullPath(attachment.FileName), Path.GetFileName(attachment.FileName), CompressionLevel.Fastest); } } … }

使用SharpZipLib创建的ZIP文件无法在Mac OS X上打开

唉,今天是愚蠢问题的一天,我是个白痴。 我有一个应用程序,它创建一个zip文件,其中包含某个目录中的一些JPEG。 我使用此代码以便: 从目录中读取所有文件 将它们中的每一个附加到ZIP文件中 using (var outStream = new FileStream(“Out2.zip”, FileMode.Create)) { using (var zipStream = new ZipOutputStream(outStream)) { foreach (string pathname in pathnames) { byte[] buffer = File.ReadAllBytes(pathname); ZipEntry entry = new ZipEntry(Path.GetFileName(pathname)); entry.DateTime = now; zipStream.PutNextEntry(entry); zipStream.Write(buffer, 0, buffer.Length); } } } 一切都在Windows下运行良好,当我打开文件,例如使用WinRAR ,文件被提取。 但是一旦我尝试在Mac OS X上解压缩我的存档,它就会创建一个.cpgz文件。 相当无用。 在Windows和Mac OS X上提取在Windows上使用相同文件手动创建的普通.zip文件,没有任何问题。 我在互联网上找到了上面的代码,所以我不确定整件事是否正确。 […]

.NET中最快的GZIP解压缩库

哪个.NET库具有最快的解压缩性能(就吞吐量而言)? 那里有不少图书馆…… GZipStream DotNetZip Xceed Zip for .NET SevenZipLib SharpZipLib | Xceed Zip for .NET的社区赞助商 ……我希望还有更多我没有列出的。 有没有人看过这些GZIP库的吞吐量性能基准? 我对减压吞吐量很感兴趣,但我也希望看到压缩的结果。

使用Ionic.Zip dll在SSIS中解压缩受密码保护的文件

我要求解压缩包含zip文件中受密码保护的文本文件的文件。必须在SSIS包中完成。 我用google搜索并下载了一个名为Ionic.Zip的dll,用于脚本任务。 我在脚本任务中使用了c#以下代码。 using Ionic.Zip; public void Main() { Dts.TaskResult = (int)ScriptResults.Success; start obj= new start(); obj.decrypt(); } public class start { public void decrypt() { string sfilepath =”E:\\shekar\\CIF_Files\\USAGE.zip”; ZipFile fileToExtract = new ZipFile(sfilepath); fileToExtract.Password = “ftp122”; fileToExtract.ExtractAll(“E:\\shekar\\CIF_Files”); } } 但我得到一个exception消息,如下所示 我有很多谷歌。 但找不到正确的解决方案。 有没有人certificate我回答

如何在C#中压缩(和解压缩)byte ?

如何在C#中压缩(和解压缩)一个字节数组? 在少于100个元素的字节数组上使用zip / unzip是否有效?

如何使用ZipPackage创建一个zip

我在MSDN上看到了关于ZipPackage类的文档。 这个例子不是很有用,任何人都可以提供一个关于这个类的例子吗?

如何在没有ZipArchive的情况下解压缩Windows 8 Metro中的ZIP文件(zlib.net)

我有一个用C#编写的Windows 8 Metro应用程序。 我需要打开一个ZIP文件并读取它包含的XML文件。 我使用了ZipArchive类,但它在当前构建中变得越来越不合适而且不再有效。 还有另一种方式吗? 我尝试使用谷歌搜索其他ZIP库,但我唯一可以在WinRT中工作的是zlib.net,这个库没有非常简洁的界面。 如何在C#中使用zlib.net从ZIP读取XML文件为字符串?

有没有办法用另一个库解压缩DynaZip Max文件? FE DotNetZip

我有一个数据库,我们使用以下代码存储使用DynaZip Max Secure压缩的pdf文件: MemoryStream msIN = new System.IO.MemoryStream(); //Input MemoryStream MemoryStream msZip = new System.IO.MemoryStream(); //Compressed MemoryStream BinaryReader objBinaryReader; BinaryWriter objBinaryWriter; public MemoryStream CompressStream(byte[] vbuf) { System.IO.BinaryWriter bw = new System.IO.BinaryWriter(msIN); bw.Write(vbuf); CDZipSNET dz1 = new CDZipSNET(); dz1.ZipMemToMemCallback += new CDZipSNET.OnZipMemToMemCallback(this.ZipMemToMemCallback_event); dz1.ActionDZ = CDZipSNET.DZACTION.ZIP_MEMTOMEM; return msZip; } 这是ZipMemToMemCallback_event代码: public void ZipMemToMemCallback_event(CDZipSNET.MEMTOMEMACTION lAction,ref byte[] lpMemBuf,ref uint […]

如何生成临时Zip文件,然后在下载后自动删除它?

我有一个下载页面,其中有3个下载选项:Word,Zip和PDF。 有一个包含.doc文件的文件夹。 当用户单击页面上的Zip选项时,我希望ASP.NET将带有.doc文件的文件夹压缩为临时.zip文件。 然后客户端将从服务器下载它。 用户下载完成后,临时Zip文件应自行删除。 如何使用ASP.NET 2.0 C#执行此操作? 注意:我知道如何使用C#ASP.NET 2.0压缩和解压缩文件并从系统中删除文件。

如何提取从HttpWebResponse收到的压缩文件?

我将url放到浏览器的地址栏中,然后将zip文件下载到HD。 压缩文件的大小为386字节,在其属性中写入。 当我使用UnZipFiles方法提取文件时 – 它的工作原理。 但是,我想下载programaticaly并将其提取到内存中。 我使用GetResultFromServer方法来获取压缩内容。 如标题所示,内容的大小与HD上保存的压缩文件的大小相同: content-disposition: attachment; filename=emaillog-xml.zip Content-Length: 386 Cache-Control: private Content-Type: application/zip Date: Mon, 10 Sep 2012 08:28:28 GMT Server: Microsoft-IIS/7.5 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET 我的问题是如何提取GetResultFromServer返回的内容? 我尝试了以下方法: var ms = new MemoryStream(Encoding.Unicode.GetBytes(res)) var s = new ZipInputStream(ms); 但是我Unable to read from this stream 。 更新 我试过var zipStream = new System.IO.Compression.GZipStream(response.GetResponseStream(), […]