如何查找离子zip文件的未压缩大小

时间:2012-06-08 07:39:40

标签: size dotnetzip compression

我有一个使用Ionic zip压缩的zip文件。在解压缩之前,我需要验证可用的磁盘空间。但是如何在手前找到未压缩的尺寸? zip文件中是否有任何标题信息(通过离子)以便我可以阅读它?

2 个答案:

答案 0 :(得分:8)

这应该可以解决问题:

static long totaluncompressedsize;
static string info;
.
.
.
.

// Option 1
foreach (ZipEntry e in zip)
{
    long uncompressedsize = e.UncompressedSize;
    totaluncompressedsize += uncompressedsize;
}

// Or

// Option 2 - will need to sift through the mass of info        
using (ZipFile zip = ZipFile.Read(zipFile))
{
    info = zip.Info;
}

答案 1 :(得分:2)

public static long GetTotalUnzippedSize(string zipFileName)
{
    using (ZipArchive zipFile = ZipFile.OpenRead(zipFileName))
    {
        return zipFile.Entries.Sum(entry => entry.Length);
    }
}