Class LzmaArchiveSettings
Namespace: Aspose.Zip.LZMA
Assembly: Aspose.Zip.dll (25.1.0)
Nastavení pro lzma archív.
public class LzmaArchiveSettings
Dědění
Děděné členy
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Poznámky
Algoritmus Lempel–Ziv–Markov chain (LZMA) je algoritmus používaný k provádění bezztrátové komprese dat. Tento algoritmus používá schéma komprese pomocí slovníku, které je poněkud podobné algoritmu LZ77, a nabízí vysoký kompresní poměr a proměnlivou velikost kompresního slovníku.
Více informací: https://en.wikipedia.org/wiki/Lempel–Ziv–Markov_chain_algorithm
Konstruktor
LzmaArchiveSettings()
Inicializuje novou instanci třídy Aspose.Zip.LZMA.LzmaArchiveSettings s výchozí velikostí slovníku, která činí 16 megabajtů.
public LzmaArchiveSettings()
Příklady
using (LzmaArchive archive = new LzmaArchive(new LzmaArchiveSettings() { DictionarySize = 1048576 } )
{
archive.SetSource("data.bin);
archive.Save(lzmaFile);
}
Vlastnosti
DictionarySize
Velikost slovníku (historického bufferu) udává, kolik bajtů nedávno zpracovaných nekomprimovaných dat je uchováváno v paměti. Pokud není nastavena, bude vybrána podle velikosti položky.
public int DictionarySize { get; set; }
Hodnota vlastnosti
Poznámky
Čím větší je slovník, tím lepší je obvykle kompresní poměr, ale slovníky větší než nekomprimovaná data jsou plýtváním RAM.
CompressionProgressed
Vyvolá se, když je zkomprimována část surového proudu.
public event EventHandler<progresseventargs> CompressionProgressed
Typ události
EventHandler<ProgressEventArgs>
Příklady
lzmaArchiveSettings.CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };