Class SevenZipArchive

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

object SevenZipArchive

Implements

IArchive , IDisposable

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

ArgumentException

sourceStream’ is not seekable.

ArgumentNullException

sourceStream’ is null.

NotImplementedException

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

ArgumentNullException

path’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy path" -tiedostoon kielletään.

PathTooLongException

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ä.

NotSupportedException

path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.

FileNotFoundException

Tiedostoa ei löydy.

DirectoryNotFoundException

Määritetty reitti ei ole pätevä, esimerkiksi ollessa kartattoman ajoneuvon päällä.

IOException

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

ArgumentNullException

parts’ is null.

ArgumentException

parts’ has no entries.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

Matka tiedostoon on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Tiedostoon pääsy kielletään.

PathTooLongException

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ä.

NotSupportedException

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

SevenZipEntrySettings

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

SevenZipArchive

Arkisto, jossa on kirjoituksia.

Examples

using (SevenZipArchive archive = new SevenZipArchive())
{
    DirectoryInfo folder = new DirectoryInfo("C:\folder");
    archive.CreateEntries(folder);
    archive.Save("folder.7z");
}

Exceptions

DirectoryNotFoundException

Matka direktiiviin" on vaadittava, esimerkiksi ollessa kartattamatta.

SecurityException

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

SevenZipArchive

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

SevenZipArchiveEntry

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

UnauthorizedAccessException

fileInfo’ is read-only or is a directory.

DirectoryNotFoundException

Määritetty reitti ei ole pätevä, esimerkiksi ollessa kartattoman ajoneuvon päällä.

IOException

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

SevenZipArchiveEntry

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

InvalidOperationException

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

SevenZipArchiveEntry

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

SevenZipArchiveEntry

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

ArgumentNullException

path’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy path" -tiedostoon kielletään.

PathTooLongException

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ä.

NotSupportedException

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

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

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ä.

SecurityException

Kääntäjällä ei ole tarvittavaa lupaa käyttää olemassa olevaa direktoria.

NotSupportedException

Jos luetteloa ei ole olemassa, reitillä on rintakehän merkki (:) joka ei ole osa ohjaimen merkkiä (“C:”).

ArgumentException

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 (:).

IOException

Reitin mukainen luettelo on tiedosto. -or- Verkon nimi ei ole tiedossa.

InvalidDataException

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

ArgumentException

output’ does not support seeking.

ArgumentNullException

output’ is null.

InvalidOperationException

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

ArgumentNullException

destinationFileName’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

destinationFileName’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy destinationFileName’ -tiedostoon kielletään.

PathTooLongException

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ä.

NotSupportedException

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

InvalidOperationException

Tämä arkisto on avattu olemassa olevasta lähteestä.

ArgumentNullException

destinationDirectory’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa lupaa tutustua direktoriin.

ArgumentException

destinationDirectory’ contains invalid characters such as “, >, <, or |.

PathTooLongException

Määritetty reitti ylittää järjestelmän määrittämän enimmäispituuden.

 Suomi