c#是否将文件移动到zip文件夹?

c#是否将文件移动到zip文件夹?,c#,file-io,zip,C#,File Io,Zip,我要做的是在windows资源管理器中右键单击创建一个zip文件夹,然后单击new->Compressed(zip)文件夹 然后我想使用类似于My.Computer.Filesystem.MoveFile的东西(“C:\From.jpg”,“C:\ZipFolder.zip\to.jpg”,true) 但是我得到一个错误“同名的文件或目录已经存在” 有没有一个简单的方法可以做到这一点?我认为windows支持zip文件夹,但它似乎不知道我正在尝试将文件移动到zip文件夹,相反,它将zip视为一个

我要做的是在windows资源管理器中右键单击创建一个zip文件夹,然后单击new->Compressed(zip)文件夹

然后我想使用类似于My.Computer.Filesystem.MoveFile的东西(“C:\From.jpg”,“C:\ZipFolder.zip\to.jpg”,true)

但是我得到一个错误“同名的文件或目录已经存在”

有没有一个简单的方法可以做到这一点?我认为windows支持zip文件夹,但它似乎不知道我正在尝试将文件移动到zip文件夹,相反,它将zip视为一个文件,并认为我正在覆盖它或其他东西。

在中,将文件添加到现有zip非常简单可靠

DotNetZip是一个快速、免费的类库和用于处理zip文件的工具集。使用VB、C#或任何.NET语言轻松创建、提取或更新zip文件

DotNetZip是.NET最好的开源ZIP库

using (var zip = ZipFile.Read(nameOfExistingZip))
{
    zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
    zip.AddFile(additionalFileToAdd);
    zip.Save();
}
如果要为新文件指定目录路径,请对AddFile()使用不同的重载

如果要添加一组文件,请使用AddFiles()


旁注:Windows从不支持“zip文件夹”-有文件系统级压缩和创建zip文件/在资源管理器中打开zip文件以查看内容…如果此问题重复,请至少提供指向以前回答的位置的链接。如果您没有看到“自动”,则此问题在此处已有答案:在你的帖子中发表评论,请询问为什么它没有出现在你面前。这里是链接,以防万一。
using (var zip = ZipFile.Read(nameOfExistingZip))
{
    zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
    zip.AddFile(additionalFileToAdd, "directory\\For\\The\\Added\\File");
    zip.Save();
}
using (var zip = ZipFile.Read(nameOfExistingZip))
{
    zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
    zip.AddFiles(listOfFilesToAdd, "directory\\For\\The\\Added\\Files");
    zip.Save();
}