Class LzmaArchiveSettings
Namespace: Aspose.Zip.LZMA
Assembly: Aspose.Zip.dll (25.1.0)
การตั้งค่าสำหรับ lzma archive.
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; }
ค่าคุณสมบัติ
ข้อคิดเห็น
ยิ่งพจนานุกรมใหญ่ อัตราการบีบอัดก็จะยิ่งดีขึ้น แต่พจนานุกรมที่ใหญ่กว่าข้อมูลที่ไม่ได้บีบอัดจะทำให้ใช้ RAM เปล่าประโยชน์
CompressionProgressed
จะถูกเรียกเมื่อมีการบีบอัดข้อมูลจากสตรีมดิบบางส่วน
public event EventHandler<progresseventargs> CompressionProgressed
ประเภทเหตุการณ์
EventHandler<ProgressEventArgs>
ตัวอย่าง
lzmaArchiveSettings.CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };