Freigeben über


ZipArchiveEntry.CompressedLength Eigenschaft

Definition

Ruft die in Bytes ausgedrückte komprimierte Größe des Eintrags im ZIP-Archiv ab.

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

Eigenschaftswert

Die Größe des komprimierten Eintrags im ZIP-Archiv.

Ausnahmen

Der Wert der Eigenschaft ist nicht verfügbar, da der Eintrag geändert wurde.

Beispiele

Das folgende Beispiel zeigt, wie Sie Einträge in einem ZIP-Archiv abrufen und die Eigenschaften der Einträge auswerten. Es verwendet die Name -Eigenschaft, um den Namen des Eintrags anzuzeigen, und die Length Eigenschaften und CompressedLength , um zu berechnen, wie viel die Datei komprimiert wurde.

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

Hinweise

Diese Eigenschaft kann nicht abgerufen werden, wenn der Modus auf Createfestgelegt ist oder der Modus auf Update festgelegt ist und der Eintrag geöffnet wurde.

Gilt für: