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


CompressionLevel Перечисление

Определение

Задает значения, показывающие, выделяет ли операция сжатия скорость или размер сжатого файла.

public enum class CompressionLevel
public enum CompressionLevel
type CompressionLevel = 
Public Enum CompressionLevel
Наследование
CompressionLevel

Поля

Fastest 1

Операция сжатия должна завершиться как можно быстрее, даже если результирующий файл не будет сжат оптимально.

NoCompression 2

Файл не требуется сжимать.

Optimal 0

Операция сжатия должна оптимально сбалансировать скорость сжатия и размер выходных данных.

SmallestSize 3

Операция сжатия должна создавать как можно меньше выходных данных, даже если выполнение операции занимает больше времени.

Комментарии

Операции сжатия обычно предполагают компромисс между скоростью и эффективностью сжатия. Перечисление CompressionLevel используется для указания того, какой фактор является более важным в сценарии разработки: время завершения операции сжатия или размер сжатого файла. Эти значения не соответствуют определенным уровням сжатия; Объект, реализующий сжатие, определяет, как их обрабатывать.

Следующие методы DeflateStreamклассов , GZipStream, ZipArchive, ZipFileи ZipFileExtensions содержат параметр с именем compressionLevel , который позволяет указать уровень сжатия:

Примеры

В следующем примере показано, как задать уровень сжатия при создании ZIP-архива ZipFile с помощью класса .

using System;
using System.IO;
using System.IO.Compression;

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

            ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, true);
        }
    }
}
Imports System.IO
Imports System.IO.Compression

Module Module1

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

        ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, True)
    End Sub

End Module

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