CompressionLevel Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает значения, показывающие, выделяет ли операция сжатия скорость или размер сжатого файла.
public enum class CompressionLevel
public enum CompressionLevel
type CompressionLevel =
Public Enum CompressionLevel
- Наследование
Поля
Fastest | 1 | Операция сжатия должна завершиться как можно быстрее, даже если результирующий файл не будет сжат оптимально. |
NoCompression | 2 | Файл не требуется сжимать. |
Optimal | 0 | Операция сжатия должна оптимально сбалансировать скорость сжатия и размер выходных данных. |
SmallestSize | 3 | Операция сжатия должна создавать выходные данные как можно меньше, даже если выполнение операции занимает больше времени. |
Комментарии
Операции сжатия обычно связаны с компромиссом между скоростью и эффективностью сжатия. Перечисление CompressionLevel используется для указания того, какой фактор важнее в сценарии разработки: время завершения операции сжатия или размер сжатого файла. Эти значения не соответствуют определенным уровням сжатия; Объект, реализующий сжатие, определяет способ их обработки.
Следующие методы классов , , GZipStreamи ZipArchiveZipFileZipFileExtensions классы DeflateStreamвключают параметр с именемcompressionLevel
, который позволяет указать уровень сжатия:
DeflateStream.DeflateStream(Stream, CompressionLevel, Boolean)
ZipFile.CreateFromDirectory(String, String, CompressionLevel, Boolean)
ZipFileExtensions.CreateEntryFromFile(ZipArchive, String, String, 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