.net core下解压缩zip包

.net core下解压缩zip包 

1
2
3
4
5
6
7
8
9
10
11
12
//解压文件 nuget:sharpcompress net7 mvc下测试通过
 var zipPath = Path.Combine(hostingEnv.ContentRootPath, "wwwroot", "classtemp", "layuike.zip");
 var newPath = Path.Combine(gencodedir, $"{ns}.Web", "wwwroot");
 var archive = ArchiveFactory.Open(zipPath);
 foreach (var entry in archive.Entries)
 {
     if (!entry.IsDirectory)
     {
         Console.WriteLine(entry.Key);
         entry.WriteToDirectory(newPath, new ExtractionOptions() { ExtractFullPath = true, Overwrite = true });
     }
 }    

  

https://www.cjavapy.com/article/343/

 

1
2
3
4
5
6
7
8
#region 打包成zip
 
using (var archive_zip = SharpCompress.Archives.Zip.ZipArchive.Create())
{
    archive_zip.AddAllFromDirectory(gencodedir);
    archive_zip.SaveTo(zipfile, CompressionType.Deflate);
}
#endregion

  


 

测试的时候会报错,  我是先解压一个ZIP包里的文件到一个目录中,在目录中新建些文件后再把整个目录打包成ZIP包,代码都写好了,测试是前台一个按钮点击用JQUERY提交到后台,后台解压后再压缩返回ZIP包的下载路径,前面显示出来,但是测试时前台会刷新页面的,按正常来说应该是不会的,用F12开发人员工具测试发现报如下错误,不知道怎么弄了,把代码里的解压那一部分代码注释掉又是没有错了

 

 

大概知道是什么问题了,你用代码创建了目录,可以用代码在该目录下创建文件,但是用代码解压ZIP包里的文件到该目录下或者用代码复制另一个目录下的文件到该目录,就会引起上面的错误。。。​

posted @   牛腩  阅读(384)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示