.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包里的文件到该目录下或者用代码复制另一个目录下的文件到该目录,就会引起上面的错误。。。
撸码:复制、粘贴,拿起键盘就是“干”!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具