using (ZipFile zip = new ZipFile(strZipTempDirectoryPath + fileName, System.Text.Encoding.Default))//解决中文乱码问题
{
//遍历要压缩的文件列表,都是 rar 格式,且文件可正常打开。
foreach (string gvr in arrTempFilePath)
{
zip.AddFile(gvr, "");
}
zip.Save(); //保存后下载出错
}
合并的压缩包再解压缩后报错:
PS:如果被合并的文件不是压缩(如rar)格式,则不会报错。
有没有遇到过类似问题的朋友,帮忙解答一下,灰常感谢!
3 个解决方案
#1
你试试把你压缩后的文件名改成.zip试试。因为你用的是zip的压缩方式,问啥把后缀名写成rar呢?
#2
眼尖啊
#3
还是有个别tar格式文件,用代码压缩为zip后打开出错,手动解压没问题。
最后变通解决的,先把tar文件解压缩,然后再压缩成zip,最后再合到外层大的zip里面,搞定。
最后变通解决的,先把tar文件解压缩,然后再压缩成zip,最后再合到外层大的zip里面,搞定。
#1
你试试把你压缩后的文件名改成.zip试试。因为你用的是zip的压缩方式,问啥把后缀名写成rar呢?
#2
眼尖啊
#3
还是有个别tar格式文件,用代码压缩为zip后打开出错,手动解压没问题。
最后变通解决的,先把tar文件解压缩,然后再压缩成zip,最后再合到外层大的zip里面,搞定。
最后变通解决的,先把tar文件解压缩,然后再压缩成zip,最后再合到外层大的zip里面,搞定。