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