ZipArchive是ZipArchiveEntries的集合,添加/删除"条目"非常有效.但似乎没有目录/嵌套"档案"的概念.理论上,该类与文件系统分离,因为您可以在内存流中完全创建存档.但是,如果要在归档中添加目录结构,则必须在条目名称前添加路径前缀.
问题:如何扩展ZipArchive以创建更好的界面来创建和管理目录?
例如,将文件添加到目录的当前方法是使用目录路径创建条目:
var entry = _archive.CreateEntry("directory/entryname");
Run Code Online (Sandbox Code Playgroud)
而沿着这些方面的东西对我来说似乎更好:
var directory = _archive.CreateDirectoryEntry("directory");
var entry = _directory.CreateEntry("entryname");
Run Code Online (Sandbox Code Playgroud) 我有一个文件夹"D:\folder",在这个文件夹中我有10个文件需要压缩到新的存档中"D:\folder.zip".
目前我正在使用ICSharpCode.SharpZipLib,但这不是强制性要求,因此可以接受其他解决方案.
我面临的问题是,当我尝试执行该方法时,FileStream fs = File.OpenRead(@"D:\folder")由于访问指定的路径,我收到错误.
如何以简单的方式压缩这些文件?