Class LzmaArchiveSettings
Namespace: Aspose.Zip.LZMA
Assembly: Aspose.Zip.dll (25.1.0)
إعدادات أرشيف lzma.
public class LzmaArchiveSettings
الوراثة
الأعضاء الموروثة
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
الملاحظات
خوارزمية Lempel–Ziv–Markov chain (LZMA) هي خوارزمية تستخدم لأداء ضغط البيانات بدون فقدان. تستخدم هذه الخوارزمية مخطط ضغط القاموس مشابه إلى حد ما لخوارزمية LZ77 وتتميز بنسبة ضغط عالية وحجم قاموس ضغط متغير.
للمزيد: https://en.wikipedia.org/wiki/Lempel–Ziv–Markov_chain_algorithm
المنشئات
LzmaArchiveSettings()
يبدأ مثيلًا جديدًا من فئة Aspose.Zip.LZMA.LzmaArchiveSettings مع حجم قاموس افتراضي، يساوي 16 ميغابايت.
public LzmaArchiveSettings()
الأمثلة
using (LzmaArchive archive = new LzmaArchive(new LzmaArchiveSettings() { DictionarySize = 1048576 } )
{
archive.SetSource("data.bin);
archive.Save(lzmaFile);
}
الخصائص
DictionarySize
حجم القاموس (ذاكرة التاريخ) يشير إلى عدد البايتات من البيانات غير المضغوطة التي تمت معالجتها حديثًا والتي يتم الاحتفاظ بها في الذاكرة. إذا لم يتم تعيينه، سيتم اختياره وفقًا لحجم الإدخال.
public int DictionarySize { get; set; }
قيمة الخاصية
الملاحظات
كلما كان القاموس أكبر، كانت نسبة الضغط أفضل عادةً، ولكن القواميس الأكبر من البيانات غير المضغوطة تعتبر هدرًا في الذاكرة.
CompressionProgressed
يرتفع عندما يتم ضغط جزء من التدفق الخام.
public event EventHandler<progresseventargs> CompressionProgressed
نوع الحدث
EventHandler<ProgressEventArgs>
الأمثلة
lzmaArchiveSettings.CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };