Class SevenZipArchive
ja nimityö: Aspose.Zip.SevenZip Kokoelma: Aspose.Zip.dll (25.5.0)
Tämä luokka edustaa 7z arkistotiedostoa. Käytä sitä koostamaan ja poistaa 7z arkistoja.
public class SevenZipArchive : IArchive, IDisposable
Inheritance
Implements
Perintöjäsenet
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
SevenZipArchive(SevenZipEntrySettings)
Aloita Aspose.Zip.SevenZip.SevenZipArchive -luokan uusi esimerkki valinnaisilla asetuksilla sen kirjoituksille.
public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)
Parameters
newEntrySettings
SevenZipEntrySettings
Kompression ja salauksen asetukset, joita käytetään uudelleen lisättyjen Aspose.Zip.SevenZip.SevenZipArchiveEntry kohteita.Jos ei ole määritelty, LZMA-kompressio ilman salausta käytetään.
Examples
Seuraava esimerkki näyttää, miten tiivistää yksittäinen tiedosto oletusarvoilla: LZMA-tiivistys ilman salausta.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
SevenZipArchive(Virtaa, String)
Aloittaa Aspose.Zip.SevenZip.SevenZipArchive -luokan uusi esimerkki ja koostuu arkistosta voidaan poistaa merkintäluettelosta.
public SevenZipArchive(Stream sourceStream, string password = null)
Parameters
sourceStream
Stream
Arkiston lähde on.
password
string
Valinnainen salasana salaus.Jos tiedoston nimet on salattu, sen on oltava läsnä.
Examples
using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Tämä rakentaja ei decompress mitään sisäänkäyntiä. Katso Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) menetelmä decompressing.
Exceptions
sourceStream’ is not seekable.
sourceStream’ is null.
Arkistossa on useampi kuin yksi kooderi. Nyt vain LZMA-kompressio tukee.
SevenZipArchive(String ja String)
Aloittaa Aspose.Zip.SevenZip.SevenZipArchive -luokan uusi esimerkki ja koostuu arkistosta voidaan poistaa merkintäluettelosta.
public SevenZipArchive(string path, string password = null)
Parameters
path
string
Täysin pätevä tai suhteellinen reitti tiedostoon.
password
string
Valinnainen salasana salaus.Jos tiedoston nimet on salattu, sen on oltava läsnä.
Examples
using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Tämä rakentaja ei decompress mitään sisäänkäyntiä. Katso Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) menetelmä decompressing.
Exceptions
path’ is null.
Kääntäjällä ei ole tarvittavaa käyttöoikeutta.
path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.
Pääsy path" -tiedostoon kielletään.
Määritetty path", tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla tiet on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.
path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.
Tiedostoa ei löydy.
Määritetty reitti ei ole pätevä, esimerkiksi ollessa kartattoman ajoneuvon päällä.
Tiedosto on jo auki.
SevenZipArchive(String[], ja string)
Aloittaa Aspose.Zip.SevenZip.SevenZipArchive -luokan uusi esimerkki monimuotoisesta 7z-arkistosta ja koostuu luettelosta, joka voidaan poistaa arkistosta.
public SevenZipArchive(string[] parts, string password = null)
Parameters
parts
string
[]
Vaiheet kunkin segmentin monimuotoinen 7z arkisto noudattaa järjestystä
password
string
Valinnainen salasana salaus.Jos tiedoston nimet on salattu, sen on oltava läsnä.
Examples
using (SevenZipArchive archive = new SevenZipArchive(new string[] { "multi.7z.001", "multi.7z.002", "multi.7z.003" }))
{
archive.ExtractToDirectory("C:\\extracted");
}
Exceptions
parts’ is null.
parts’ has no entries.
Kääntäjällä ei ole tarvittavaa käyttöoikeutta.
Matka tiedostoon on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.
Tiedostoon pääsy kielletään.
Tietyt reitit osalle, tiedoston nimelle tai molemmille ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla reitit on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.
Tiedosto tiellä sisältää sarjan keskellä oleva koloni (:).
Properties
Entries
Saat talletuksia Aspose.Zip.SevenZip.SevenZipArchiveEntry -tyypin, joka muodostaa arkiston.
public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }
Omistuksen arvo
ReadOnlyCollection < SevenZipArchiveEntry >
NewEntrySettings
Kompression ja salauksen asetukset, joita käytetään uudelleen lisättyjen Aspose.Zip.SevenZip.SevenZipArchiveEntry kohteita.
public SevenZipEntrySettings NewEntrySettings { get; }
Omistuksen arvo
Methods
CreateEntries(Pääosat, Bool)
Lisää arkistoon kaikki tiedostot ja luettelot toistuvasti annetussa luettelossa.
public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parameters
directory
DirectoryInfo
Ohjelma on kompressi.
includeRootDirectory
bool
Se osoittaa, sisällytetäänkö root-direktiivi itse vai ei.
Returns
Arkisto, jossa on kirjoituksia.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
DirectoryInfo folder = new DirectoryInfo("C:\folder");
archive.CreateEntries(folder);
archive.Save("folder.7z");
}
Exceptions
Matka direktiiviin" on vaadittava, esimerkiksi ollessa kartattamatta.
Soittajalle ei ole tarvittavaa lupaa käyttää direktiiviä".
CreateEntries(Sormus ja bool)
Lisää arkistoon kaikki tiedostot ja luettelot toistuvasti annetussa luettelossa.
public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parameters
sourceDirectory
string
Ohjelma on kompressi.
includeRootDirectory
bool
Se osoittaa, sisällytetäänkö root-direktiivi itse vai ei.
Returns
Arkisto, jossa on kirjoituksia.
Examples
Se koostuu 7z arkistosta LZMA2-kompressiolla.
using (SevenZipArchive archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntries("C:\folder");
archive.Save("folder.7z");
}
CreateEntry(sarja, FileInfo, bool, SevenZipEntrySettings)
Luo yksi kirja arkiston sisällä.
public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Sisäänkäynnin nimi.
fileInfo
FileInfo
Tiedostojen metatiedot on purettava.
openImmediately
bool
Totuus, jos avaat tiedoston välittömästi, muuten avaa tiedosto arkiston tallennuksessa.
newEntrySettings
SevenZipEntrySettings
Kompressiointi ja salaus asetukset käytetään lisäämään Aspose.Zip.SevenZip.SevenZipArchiveEntry elementti.
Returns
Seitsemän Zip sisäänkäyntiä.
Examples
Koota arkisto, jossa on salattu kirjaimet eri salasanoilla kukin.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
FileInfo fi1 = new FileInfo("data1.bin");
FileInfo fi2 = new FileInfo("data2.bin");
FileInfo fi3 = new FileInfo("data3.bin");
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
archive.Save(sevenZipFile);
}
}
Remarks
Sisällön nimi asetetaan vain parametrien sisällä. parametriin annettu tiedoston nimi ei vaikuta sisällön nimiin.
Jos tiedosto avautuu välittömästi parametrien avulla, se estetään, kunnes arkisto on tallennettu.
Exceptions
fileInfo’ is read-only or is a directory.
Määritetty reitti ei ole pätevä, esimerkiksi ollessa kartattoman ajoneuvon päällä.
Tiedosto on jo auki.
CreateEntry(sarja, Stream, SevenZipEntrySettings, FileSystemInfo)
Luo yksi kirja arkiston sisällä.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
Parameters
name
string
Sisäänkäynnin nimi.
source
Stream
Sisäänpääsy virtaa sisäänpääsyyn.
newEntrySettings
SevenZipEntrySettings
Kompressiointi ja salaus asetukset käytetään lisäämään Aspose.Zip.SevenZip.SevenZipArchiveEntry elementti.
fileInfo
FileSystemInfo
Tiedoston tai tiedoston metatiedot tulee kompressoida.
Returns
Seitsemän Zip sisäänkäyntiä.
Examples
Muokkaa arkistoa LZMA2-kompresoidulla salattuun sisäänkäyntiin.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF}), new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("test1")), new FileInfo("data1.bin"));
archive.Save(sevenZipFile);
}
}
Remarks
Sisällön nimi asetetaan vain parametrien sisällä. parametriin annettu tiedoston nimi ei vaikuta sisällön nimiin.
voi viitata System.IO.DirectoryInfo, jos merkintä on luettelo.
Exceptions
Sekä source’ että
fileInfo’ ovat nolla tai
source’ on nolla ja
fileInfo’ on merkki.
CreateEntry(virtaa, virtaa, SevenZipEntrySettings)
Luo yksi kirja arkiston sisällä.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Sisäänkäynnin nimi.
source
Stream
Sisäänpääsy virtaa sisäänpääsyyn.
newEntrySettings
SevenZipEntrySettings
Kompressiointi ja salaus asetukset käytetään lisäämään Aspose.Zip.SevenZip.SevenZipArchiveEntry elementti.
Returns
Zip sisäänkäynti.
Examples
Koota 7z arkisto LZMA2-kompressiolla ja salauksella kaikkien kirjoitusten.
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("p@s$"))))
{
archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
archive.Save("archive.7z");
}
CreateEntry(sarja, sarja, bool, SevenZipEntrySettings)
Luo yksi kirja arkiston sisällä.
public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Sisäänkäynnin nimi.
path
string
Uuden tiedoston täysin pätevä nimi tai kompresoidun suhteellinen tiedoston nimi.
openImmediately
bool
Totuus, jos avaat tiedoston välittömästi, muuten avaa tiedosto arkiston tallennuksessa.
newEntrySettings
SevenZipEntrySettings
Kompressiointi ja salaus asetukset käytetään lisäämään Aspose.Zip.SevenZip.SevenZipArchiveEntry elementti.
Returns
Zip sisäänkäynti.
Examples
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
Remarks
Sisällön nimi asetetaan vain parametrien sisällä. parametriin annettu tiedoston nimi ei vaikuta sisällön nimiin.
Jos tiedosto avautuu välittömästi parametrien avulla, se estetään, kunnes arkisto on tallennettu.
Exceptions
path’ is null.
Kääntäjällä ei ole tarvittavaa käyttöoikeutta.
path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.
Pääsy path" -tiedostoon kielletään.
Määritetty path", tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla tiet on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.
path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.
Dispose()
Se suorittaa sovellukseen määriteltyjä tehtäviä, jotka liittyvät vapauttamiseen, vapauttamiseen tai hallitsemattomien resurssien palauttamiseen.
public void Dispose()
Dispose(Booli)
Se suorittaa sovellukseen määriteltyjä tehtäviä, jotka liittyvät vapauttamiseen, vapauttamiseen tai hallitsemattomien resurssien palauttamiseen.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Hallittuja resursseja on käytettävä.
ExtractToDirectory(String ja String)
Poistaa kaikki tiedostot arkistosta annettuun luetteloon.
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameters
destinationDirectory
string
Matka direktoriin sijoittaa poistettuja tiedostoja.
password
string
Valinnainen salasana sisällön salaukseen.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Jos rekisteri ei ole olemassa, se luodaan.
Käytetään vain sisällön salauksen. Jos tiedoston nimet ovat salattuja, anna salasanan Aspose.Zip.Seven ZipArchive.#ctor(System.String,Systems. String) tai __ WL51.ZIP.Työtyylä.
Exceptions
destinationDirectory’ is null.
Tietyt reitit, tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisissa alustoissa reitit on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.
Kääntäjällä ei ole tarvittavaa lupaa käyttää olemassa olevaa direktoria.
Jos luetteloa ei ole olemassa, reitillä on rintakehän merkki (:) joka ei ole osa ohjaimen merkkiä (“C:”).
destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).
Reitin mukainen luettelo on tiedosto. -or- Verkon nimi ei ole tiedossa.
Arkisto on korruptoitu.
Save(Stream)
Säästää 7z arkiston antamaan virtaukseen.
public void Save(Stream output)
Parameters
output
Stream
Tavoitteen virta.
Examples
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data", source);
archive.Save(sevenZipFile);
}
}
}
Remarks
Sen täytyy olla etsimätön.
Exceptions
output’ does not support seeking.
output’ is null.
Kooderi ei onnistunut kompressoimaan tietoja.
Save(String)
Tallenna arkistoa määränpäätiedostoon.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Jos tiedoston nimi viittaa olemassa olevaan tiedostoon, se kirjoitetaan uudelleen.
Examples
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntry("data", source);
archive.Save("archive.7z");
}
}
Remarks
On mahdollista tallentaa arkisto samalle tielle kuin se ladattiin. kuitenkin, tämä ei ole suositeltavaa, koska tämä lähestymistapa käyttää kopiointia tilapäiseen tiedostoon.
Exceptions
destinationFileName’ is null.
Kääntäjällä ei ole tarvittavaa käyttöoikeutta.
destinationFileName’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.
Pääsy destinationFileName’ -tiedostoon kielletään.
Määritetty destinationFileName’, tiedoston nimi, tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla reitin on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.
Tiedosto destinationFileName’ sisältää sarjan keskellä olevan sarjan (:) sarjan.
SaveSplit(rivi, SplitSevenZipArchiveSaveOptions)
Säästää monimuotoista arkistoa annettuun kohderekisteriin.
public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)
Parameters
destinationDirectory
string
Matka direktoriin, jossa arkistosegmentit luodaan.
options
SplitSevenZipArchiveSaveOptions
Vaihtoehdot arkiston tallentamiseen, mukaan lukien tiedoston nimi.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
archive.CreateEntry("entry.bin", "data.bin");
archive.SaveSplit(@"C:\Folder", new SplitSevenZipArchiveSaveOptions("volume", 65536));
}
Remarks
Tämä menetelmä koostuu useista () tiedostoista filename.7z.001, filename.7z.002, …, filename.7z.(n).
Ei voi tehdä olemassa olevaa arkistoa monimuotoista.
Exceptions
Tämä arkisto on avattu olemassa olevasta lähteestä.
destinationDirectory’ is null.
Kääntäjällä ei ole tarvittavaa lupaa tutustua direktoriin.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
Määritetty reitti ylittää järjestelmän määrittämän enimmäispituuden.