Class LhaArchive
Namespace: Aspose.Zip.Lha
Assembly: Aspose.Zip.dll (25.1.0)
Tato třída představuje archivní soubor LHA (.lzh).
public class LhaArchive : IArchive, IDisposable
Dědičnost
Implementuje
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
Jsou podporovány pouze následující metody komprese:
Metoda | Vysvětlení |
---|---|
lh0 | Nekomprimováno |
lh4 | 8 KiB posuvný slovník a statický Huffman |
lh5 | 16 KiB posuvný slovník a statický Huffman |
lh6 | 64 KiB posuvný slovník a statický Huffman |
lh7 | 128 KiB posuvný slovník a statický Huffman |
lhx | 1 Mib posuvný slovník a statický Huffman |
lhd | Adresář |
Konstruktor
LhaArchive(Stream)
Inicializuje novou instanci třídy Aspose.Zip.Lha.LhaArchive a sestavuje seznam položek, které mohou být extrahovány z archivu.
public LhaArchive(Stream sourceStream)
Parametry
sourceStream
Stream
Zdroj archivu.
Poznámky
Tento konstruktor neprovádí dekompresi žádné položky. Viz metoda Aspose.Zip.Lha.LhaArchiveEntry.Extract(System.IO.Stream) pro dekompresi.
Výjimky
sourceStream
je null.
sourceStream
není možné procházet.
Byla nalezena nevhodná data.
LhaArchive(string)
Inicializuje novou instanci třídy Aspose.Zip.Lha.LhaArchive a sestavuje seznam položek, které mohou být extrahovány z archivu.
public LhaArchive(string path)
Parametry
path
string
Úplná nebo relativní cesta k archivu.
Příklady
Následující příklad extrahuje archiv a poté dekomprimuje první položku do MemoryStream
.
var extracted = new MemoryStream();
using (LhaArchive archive = new LhaArchive("sample.lzh"))
{
archive.Entries[0].Extract(extracted);
}
Poznámky
Tento konstruktor neprovádí dekompresi žádné položky. Viz metoda Aspose.Zip.ArchiveEntry.Open(System.String) pro dekompresi.
Výjimky
path
je null.
Volající nemá potřebná oprávnění pro přístup.
path
je prázdný, obsahuje pouze bílé znaky nebo obsahuje neplatné znaky.
Přístup k souboru path
je odepřen.
Zadaná path
, název souboru nebo obojí překračují maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.
Soubor na path
obsahuje dvojtečku (:) uprostřed řetězce.
Soubor nebyl nalezen.
Zadaná cesta je neplatná, například je na nepřiřazeném disku.
Soubor je již otevřen.
Soubor je poškozen.
Vlastnosti
Entries
Získává položky souborů typu Aspose.Zip.Lha.LhaArchiveEntry, které tvoří archiv.
public ReadOnlyCollection<lhaarchiveentry> Entries { get; }
Hodnota vlastnosti
ReadOnlyCollection<LhaArchiveEntry>
Metody
Dispose()
public void Dispose()
ExtractToDirectory(string)
Extrahuje všechny soubory a adresáře v archivu do zadaného adresáře.
public void ExtractToDirectory(string destinationDirectory)
Parametry
destinationDirectory
string
Cesta k adresáři, do kterého budou umístěny extrahované soubory.
Příklady
using (var archive = new LhaArchive("archive.lzh"))
{
archive.ExtractToDirectory("C:\extracted");
}
Poznámky
Pokud adresář neexistuje, bude vytvořen.
Výjimky
destinationDirectory
je null.
Zadaná cesta, název souboru nebo obojí překračují maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.
Volající nemá potřebná oprávnění pro přístup k existujícímu adresáři.
Pokud adresář neexistuje, cesta obsahuje znak dvojtečky (:) který není součástí označení disku (“C:").
destinationDirectory
je řetězec s nulovou délkou, obsahuje pouze bílé znaky nebo obsahuje jeden nebo více neplatných znaků. Neplatné znaky lze zjistit pomocí metody System.IO.Path.GetInvalidPathChars.
-nebo- cesta je předcházena pouze znakem dvojtečky (:).
Adresář zadaný cestou je soubor. -nebo- Síťový název není znám.
Bylo dodáno špatné heslo. -nebo- Archiv je poškozen.