Class LzmaArchiveSettings
Namespace: Aspose.Zip.LZMA
Assembly: Aspose.Zip.dll (25.1.0)
Ustawienia dla archiwum lzma.
public class LzmaArchiveSettings
Dziedziczenie
Członkowie dziedziczeni
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Uwagi
Algorytm Lempel–Ziv–Markov (LZMA) jest algorytmem wykorzystywanym do bezstratnej kompresji danych. Algorytm ten wykorzystuje schemat kompresji słownikowej, który jest w pewnym stopniu podobny do algorytmu LZ77 i charakteryzuje się wysokim współczynnikiem kompresji oraz zmiennym rozmiarem słownika kompresji.
Zobacz więcej: https://en.wikipedia.org/wiki/Lempel–Ziv–Markov_chain_algorithm
Konstruktory
LzmaArchiveSettings()
Inicjalizuje nową instancję klasy Aspose.Zip.LZMA.LzmaArchiveSettings z domyślnym rozmiarem słownika, równym 16 megabajtom.
public LzmaArchiveSettings()
Przykłady
using (LzmaArchive archive = new LzmaArchive(new LzmaArchiveSettings() { DictionarySize = 1048576 } )
{
archive.SetSource("data.bin);
archive.Save(lzmaFile);
}
Właściwości
DictionarySize
Rozmiar słownika (bufor historii) wskazuje, ile bajtów niedawno przetworzonych danych niekompresowanych jest przechowywanych w pamięci. Jeśli nie jest ustawiony, zostanie wybrany odpowiednio do rozmiaru wpisu.
public int DictionarySize { get; set; }
Wartość właściwości
Uwagi
Im większy słownik, tym lepszy zazwyczaj jest współczynnik kompresji, ale słowniki większe niż dane niekompresowane są marnotrawstwem pamięci RAM.
CompressionProgressed
Wznosi się, gdy część surowego strumienia jest kompresowana.
public event EventHandler<progresseventargs> CompressionProgressed
Typ zdarzenia
EventHandler<ProgressEventArgs>
Przykłady
lzmaArchiveSettings.CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };