ZipArchiveEntry.CompressedLength Propriété

Définition

Obtient la taille compressée, exprimée en octets, de l’entrée dans l’archive zip.

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

Valeur de propriété

Taille compressée de l'entrée dans l'archive zip.

Exceptions

La valeur de la propriété n'est pas disponible car l'entrée a été modifiée.

Exemples

L’exemple suivant montre comment récupérer des entrées dans une archive zip et évaluer les propriétés des entrées. Il utilise la Name propriété pour afficher le nom de l’entrée et les Length propriétés et CompressedLength pour calculer la quantité de compression du fichier.

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

Remarques

Cette propriété ne peut pas être récupérée lorsque le mode est défini sur Create, ou lorsque le mode est défini sur Update et que l’entrée a été ouverte.

S’applique à