Поделиться через


ZipArchiveEntry.CompressedLength Свойство

Определение

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

public:
 property long CompressedLength { long get(); };
public long CompressedLength { get; }
member this.CompressedLength : int64
Public ReadOnly Property CompressedLength As Long

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

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

Исключения

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

Примеры

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

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));
                }
            }
        }
    }
}
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim zipPath As String = "c:\example\result.zip"

        Using archive As ZipArchive = ZipFile.OpenRead(zipPath)
            For Each entry As ZipArchiveEntry In archive.Entries
                Dim compressedRatio As Single = entry.CompressedLength / entry.Length
                Dim reductionPercentage As Single = 100 - (compressedRatio * 100)

                Console.WriteLine(String.Format("File: {0}, Compressed {1:F2}%", entry.Name, reductionPercentage))
            Next
        End Using
    End Sub

End Module

Комментарии

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

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