c# – SharpZipLib检查并选择ZIP文件的内容
发布时间:2020-12-15 08:37:28 所属栏目:百科 来源:网络整理
导读:我在项目中使用SharpZipLib,我想知道是否可以使用它来查看zip文件,如果其中一个文件中有一个数据在我正在搜索的范围内修改,那么选择该文件并复制它到一个新目录?有人知道这有可能吗? 解决方法 是的,可以使用SharpZipLib枚举zip文件的文件.您还可以从zip文
我在项目中使用SharpZipLib,我想知道是否可以使用它来查看zip文件,如果其中一个文件中有一个数据在我正在搜索的范围内修改,那么选择该文件并复制它到一个新目录?有人知道这有可能吗?
解决方法
是的,可以使用SharpZipLib枚举zip文件的文件.您还可以从zip文件中选择文件,并将这些文件复制到磁盘上的目录中.
这是一个小例子: using (var fs = new FileStream(@"c:temptest.zip",FileMode.Open,FileAccess.Read)) { using (var zf = new ZipFile(fs)) { foreach (ZipEntry ze in zf) { if (ze.IsDirectory) continue; Console.Out.WriteLine(ze.Name); using (Stream s = zf.GetInputStream(ze)) { byte[] buf = new byte[4096]; // Analyze file in memory using MemoryStream. using (MemoryStream ms = new MemoryStream()) { StreamUtils.Copy(s,ms,buf); } // Uncomment the following lines to store the file // on disk. /*using (FileStream fs = File.Create(@"c:tempuncompress_" + ze.Name)) { StreamUtils.Copy(s,fs,buf); }*/ } } } } 在上面的示例中,我使用MemoryStream将ZipEntry存储在内存中(供进一步分析).您还可以在磁盘上存储ZipEntry(如果它符合某些条件). 希望这可以帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |