ZipArchiveEntry.CompressedLength Свойство

Определение

Возвращает сжатый размер записи в ZIP-архиве, выраженный в байтах.

C#
public long CompressedLength { get; }

Значение свойства

Сжатый размер записи в ZIP-архиве.

Исключения

Значение свойства недоступно, поскольку запись была изменена.

Примеры

В следующем примере показано, как получить записи в ZIP-архиве и оценить свойства записей. В нем используется Name свойство для отображения имени записи, а Length свойства и CompressedLength — для вычисления объема сжатия файла.

C#
using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string zipPath = @"c:\example\result.zip";

            using (ZipArchive archive = ZipFile.OpenRead(zipPath))
            {
                foreach (ZipArchiveEntry entry in archive.Entries)
                {
                    float compressedRatio = (float)entry.CompressedLength / entry.Length;
                    float reductionPercentage = 100 - (compressedRatio * 100);

                    Console.WriteLine (string.Format("File: {0}, Compressed {1:F2}%", entry.Name, reductionPercentage));
                }
            }
        }
    }
}

Комментарии

Это свойство не может быть получено, если для режима задано значение Createили для режима задано значение Update и запись открыта.

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0