当前位置: 首页 > 编程语言 > C#

如何将文件添加到现有zip存档分享

时间:2023-04-10 16:05:55 C#

C#学习教程:如何将文件添加到现有的zip存档由于您使用的是.NET4.5,因此可以使用ZipArchive(System.IO.Compression)类来实现此目的。这是MSDN文档:(MSDN)。这是他们的示例,它只写入文本,但您可以读取.csv文件并将其写入新文件。如果只是复制文件,可以使用CreateFileFromEntry,它是ZipArchive的扩展方法。使用(FileStreamzipToOpen=newFileStream(@"c:usersexampleuserrelease.zip",FileMode.Open)){使用(ZipArchivearchive=newZipArchive(zipToOpen,ZipArchiveMode.Update)){ZipArchiveEntryreadmeEntry=archive.CreateEntry("Readme.txt");using(StreamWriterwriter=newStreamWriter(readmeEntry.Open())){writer.WriteLine("关于这个包的信息。");writer.WriteLine("=========================");}}}为了创建、提取和打开zip档案,我们可以使用ZipFile类和参考:System.IO.Compression.FileSystem。对于.NET4.5.2及以下版本,我们还需要添加一个引用:System.IO.Compression。以下是将文件添加到zip的方法:publicstaticvoidAddFilesToZip(stringzipPath,string[]files){if(files==null||files.Length==0){return;}使用(varzipArchive=ZipFile.Open(zipPath,ZipArchiveMode.Update)){foreach(varfileinfiles){varfileInfo=newFileInfo(file);zipArchive.CreateEntryFromFile(fileInfo.FullName,fileInfo.Name);}}}最简单的方法是在httpGetDotNetZipat://dotnetzip.codeplex.com/添加文件可以很简单String[]filenames={@"ReadMe.txt",@"c:datacollection.csv",@"c:reportsAnnualSummary.pdf"};使用(ZipFilezip=newZipFile()){zip.AddFiles(filenames);zip.Save("存档.zip");}其他类型的更新同样重要://从zip文件中删除一个项目zip["OldData.txt"].RemoveEntry();//重命名zip文件中的项目zip["Internationalization.doc"].FileName="i18n.doc";//向存档添加注释zip.Comment="Th是zip存档已更新"+System.DateTime.ToString("G");zip.Save();}编者注:用于CodeplexCodeplex的DotNetZip已关闭。旧存档仍然[可在Codeplex获得][1]貌似代码已经迁移到Github了:以上就是C#学习教程:如何将文件添加到已有的zip压缩包的全部内容,本文收集自网络,不代表立场,如有涉及侵权,请点击维权联系管理员删除,如需转载请注明出处: