Class SevenZipArchive

Class SevenZipArchive

De naam: Aspose.Zip.SevenZip Verzameling: Aspose.Zip.dll (25.5.0)

Deze klasse vertegenwoordigt 7z archiefbestand. Gebruik het om 7z archieven te composeren en te extraheren.

public class SevenZipArchive : IArchive, IDisposable

Inheritance

object SevenZipArchive

Implements

IArchive , IDisposable

Geëerbiede leden

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

SevenZipArchive(SevenZipEntrySettings)

Initialiseert een nieuwe instantie van de Aspose.Zip.SevenZip.SevenZipArchive-klasse met optionele instellingen voor de inzichten.

public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)

Parameters

newEntrySettings SevenZipEntrySettings

Compression en encryptie instellingen gebruikt voor nieuw toegevoegde Aspose.Zip.SevenZip.SevenZipArchiveEntry items.Als niet aangegeven, LZMA compressie zonder encryptie zou worden gebruikt.

Examples

Het volgende voorbeeld laat zien hoe u een enkele bestand met standaard instellingen kunt compresseren: LZMA compression zonder encryptie.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(sevenZipFile);
    }
}

SevenZipArchive(Strom, Strom)

Initialiseert een nieuwe instantie van de Aspose.Zip.SevenZip.SevenZipArchive-klasse en maakt een inlijstlijst die uit het archief kan worden geïntroduceerd.

public SevenZipArchive(Stream sourceStream, string password = null)

Parameters

sourceStream Stream

De bron van het archief.

password string

Optionele wachtwoord voor decryptie.Als de bestandnamen worden gecodeerd, moet het aanwezig zijn.

Examples

using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
    archive.ExtractToDirectory("C:\\extracted");
}

Remarks

Zie Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) methode voor decompressie.

Exceptions

ArgumentException

sourceStream’ is not seekable.

ArgumentNullException

sourceStream’ is null.

NotImplementedException

Het archief bevat meer dan één coder. nu alleen LZMA-compressie ondersteund.

SevenZipArchive(String en String)

Initialiseert een nieuwe instantie van de Aspose.Zip.SevenZip.SevenZipArchive-klasse en maakt een inlijstlijst die uit het archief kan worden geïntroduceerd.

public SevenZipArchive(string path, string password = null)

Parameters

path string

De volledig gekwalificeerde of de relatieve route naar het archiefbestand.

password string

Optionele wachtwoord voor decryptie.Als de bestandnamen worden gecodeerd, moet het aanwezig zijn.

Examples

using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
    archive.ExtractToDirectory("C:\\extracted");
}

Remarks

Zie Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) methode voor decompressie.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

De oproepgever heeft niet de vereiste toestemming om toegang te krijgen.

ArgumentException

De path’ is leeg, bevat alleen witte ruimtes of bevat invalide tekens.

UnauthorizedAccessException

De toegang tot het bestand path’ wordt geweigerd.

PathTooLongException

De aangegeven path’, bestandsnaam, of beide overschrijden de door het systeem gedefinieerde maximale lengte. Bijvoorbeeld, op Windows-gebaseerde platforms, moeten paden minder dan 248 tekens zijn, en bestandsnamen moeten minder dan 260 tekens zijn.

NotSupportedException

Het bestand op path’ bevat een kolom (:) in het midden van de string.

FileNotFoundException

Het bestand is niet gevonden.

DirectoryNotFoundException

De aangegeven route is ongeldig, bijvoorbeeld op een onmapped drive.

IOException

Het bestand is al open.

SevenZipArchive(String[], De string)

Initialiseert een nieuwe instantie van de Aspose.Zip.SevenZip.SevenZipArchive-klasse uit het multi-volume 7z-archief en maakt een lijst met ingang die uit het archief kan worden geïntroduceerd.

public SevenZipArchive(string[] parts, string password = null)

Parameters

parts string []

Stappen naar elk segment van multi-volume 7z archief met volgorde

password string

Optionele wachtwoord voor decryptie.Als de bestandnamen worden gecodeerd, moet het aanwezig zijn.

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

De oproepgever heeft niet de vereiste toestemming om toegang te krijgen.

ArgumentException

De weg naar een bestand is leeg, bevat alleen witte ruimtes, of bevat ongeldig karakters.

UnauthorizedAccessException

Toegang tot een bestand wordt geweigerd.

PathTooLongException

De gespecificeerde route naar een deel, bestandnaam, of beide overschrijdt de door het systeem gedefinieerde maximale lengte. Bijvoorbeeld, op Windows-gebaseerde platforms, moeten paden minder dan 248 tekens, en bestandnamen moeten minder dan 260 tekens zijn.

NotSupportedException

Een bestand op een pad bevat een kolom (:) in het midden van de draad.

Properties

Entries

Geeft input van Aspose.Zip.SevenZip.SevenZipArchiveEntry type dat het archief vormt.

public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }

Eigendomswaarde

ReadOnlyCollection < SevenZipArchiveEntry >

NewEntrySettings

Compression en encryptie instellingen gebruikt voor nieuw toegevoegde Aspose.Zip.SevenZip.SevenZipArchiveEntry items.

public SevenZipEntrySettings NewEntrySettings { get; }

Eigendomswaarde

SevenZipEntrySettings

Methods

CreateEntries(DirectoryInfo, Bool)

Toegevoegd aan het archief alle bestanden en directories opnieuw in de gegeven directory.

public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)

Parameters

directory DirectoryInfo

Directory voor compressie.

includeRootDirectory bool

Hiermee wordt aangegeven of de root directory zelf moet worden opgenomen of niet.

Returns

SevenZipArchive

Het archief met ingeschreven inzichten.

Examples

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

Exceptions

DirectoryNotFoundException

De route naar directory’ is ongeldig, bijvoorbeeld op een niet-mapped schijf.

SecurityException

De oproeker heeft niet de vereiste toestemming om toegang te krijgen tot directory'.

CreateEntries(String en Bool)

Toegevoegd aan het archief alle bestanden en directories opnieuw in de gegeven directory.

public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)

Parameters

sourceDirectory string

Directory voor compressie.

includeRootDirectory bool

Hiermee wordt aangegeven of de root directory zelf moet worden opgenomen of niet.

Returns

SevenZipArchive

Het archief met ingeschreven inzichten.

Examples

Compose 7z archief met LZMA2 compressie.

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

CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)

Creëren van een enkele ingang binnen het archief.

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

De naam van de ingang.

fileInfo FileInfo

De metadata van het bestand moeten worden gecomprimeerd.

openImmediately bool

Het is waar, als u het bestand onmiddellijk opent, anders opent u het bestand op archiefopslag.

newEntrySettings SevenZipEntrySettings

Compression en encryptie instellingen gebruikt voor het toevoegen van Aspose.Zip.SevenZip.SevenZipArchiveEntry item.

Returns

SevenZipArchiveEntry

Zeven Zip invoer instanties.

Examples

Compose archief met entries versleuteld met verschillende wachtwoorden elk.

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

De invoernaam is uitsluitend ingesteld binnen de parameter.De in de parameter verstrekte bestandnaam beïnvloedt de invoernaam niet.

Als het bestand onmiddellijk wordt geopend met de parameter wordt het geblokkeerd totdat het archief is opgeslagen.

Exceptions

UnauthorizedAccessException

fileInfo’ is read-only or is a directory.

DirectoryNotFoundException

De aangegeven route is ongeldig, bijvoorbeeld op een onmapped drive.

IOException

Het bestand is al open.

CreateEntry(string, Stream, SevenZipEntrySettings, FileSystemInfo)

Creëren van een enkele ingang binnen het archief.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)

Parameters

name string

De naam van de ingang.

source Stream

De ingangstromen voor de ingang.

newEntrySettings SevenZipEntrySettings

Compression en encryptie instellingen gebruikt voor het toevoegen van Aspose.Zip.SevenZip.SevenZipArchiveEntry item.

fileInfo FileSystemInfo

De metadata van het bestand of de map om te worden gecomprimeerd.

Returns

SevenZipArchiveEntry

SevenZip ingang instantie.

Examples

Compose archief met LZMA2 gecomprimeerde versleutelde ingang.

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

De invoernaam is uitsluitend ingesteld binnen de parameter.De in de parameter verstrekte bestandnaam beïnvloedt de invoernaam niet.

kan verwijzen naar System.IO.DirectoryInfo als de ingang een directory is.

Exceptions

InvalidOperationException

Beide source’ en fileInfo’ zijn nul of source’ is nul en fileInfo’ staat voor directory.

CreateEntry(String, Stream, SevenZipEntrySettings)

Creëren van een enkele ingang binnen het archief.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

De naam van de ingang.

source Stream

De ingangstromen voor de ingang.

newEntrySettings SevenZipEntrySettings

Compression en encryptie instellingen gebruikt voor het toevoegen van Aspose.Zip.SevenZip.SevenZipArchiveEntry item.

Returns

SevenZipArchiveEntry

Zip ingang instantie.

Examples

Compose 7z archief met LZMA2 compressie en encryptie van alle inzichten.

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(string, string, bool, SevenZipEntrySettings)

Creëren van een enkele ingang binnen het archief.

public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

De naam van de ingang.

path string

De volledig gekwalificeerde naam van de nieuwe bestand, of de relatieve bestandnaam om te worden gecomprimeerd.

openImmediately bool

Het is waar, als u het bestand onmiddellijk opent, anders opent u het bestand op archiefopslag.

newEntrySettings SevenZipEntrySettings

Compression en encryptie instellingen gebruikt voor het toevoegen van Aspose.Zip.SevenZip.SevenZipArchiveEntry item.

Returns

SevenZipArchiveEntry

Zip ingang instantie.

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

De invoernaam is uitsluitend ingesteld binnen de parameter.De in de parameter verstrekte bestandnaam beïnvloedt de invoernaam niet.

Als het bestand onmiddellijk wordt geopend met de parameter wordt het geblokkeerd totdat het archief is opgeslagen.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

De oproepgever heeft niet de vereiste toestemming om toegang te krijgen.

ArgumentException

De path’ is leeg, bevat alleen witte ruimtes of bevat invalide tekens.

UnauthorizedAccessException

De toegang tot het bestand path’ wordt geweigerd.

PathTooLongException

De aangegeven path’, bestandsnaam, of beide overschrijden de door het systeem gedefinieerde maximale lengte. Bijvoorbeeld, op Windows-gebaseerde platforms, moeten paden minder dan 248 tekens zijn, en bestandsnamen moeten minder dan 260 tekens zijn.

NotSupportedException

Het bestand op path’ bevat een kolom (:) in het midden van de string.

Dispose()

Het vervult toepasselijk gedefinieerde taken die verband houden met het vrijgeven, vrijgeven of herstructureren van onbeheerde middelen.

public void Dispose()

Dispose(Bool)

Het vervult toepasselijk gedefinieerde taken die verband houden met het vrijgeven, vrijgeven of herstructureren van onbeheerde middelen.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Of de beheerde middelen moeten worden afgebroken.

ExtractToDirectory(String en String)

Extract alle bestanden in het archief naar het verstrekte directory.

public void ExtractToDirectory(string destinationDirectory, string password = null)

Parameters

destinationDirectory string

De route naar het directory om de geïntroduceerde bestanden in te plaatsen.

password string

Optionele wachtwoord voor content decryptie.

Examples

using (var archive = new SevenZipArchive("archive.7z")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

Als de directory niet bestaat, wordt deze gemaakt.

Als de bestandnamen worden versleuteld, geeft u het wachtwoord in Aspose.Zip.Seven ZipArchive.#ctor(System.String,Systems. String) of __ WL51.Zop.sevenZips.

Exceptions

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

De aangegeven pad, bestandnaam of beide overschrijden de door het systeem gedefinieerde maximale lengte. Bijvoorbeeld, op Windows-gebaseerde platforms moeten paden minder dan 248 tekens en bestandnamen moeten minder dan 260 tekens zijn.

SecurityException

De oproepgever heeft niet de vereiste toestemming om toegang te krijgen tot de bestaande directory.

NotSupportedException

Als de directory niet bestaat, bevat de route een colon karakter (:) dat niet deel uitmaakt van een drive label (“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

De door de route aangegeven directory is een bestand. -or- De netwerknaam is niet bekend.

InvalidDataException

Het archief is corrupt.

Save(Stream)

Save 7z archief naar de geleverde stroom.

public void Save(Stream output)

Parameters

output Stream

De bestemming stroom.

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

Het moet zoektbaar zijn.

Exceptions

ArgumentException

output’ does not support seeking.

ArgumentNullException

output’ is null.

InvalidOperationException

De encoder heeft de gegevens niet gecomprimeerd.

Save(String)

Speel archief op een bestand van bestemming.

public void Save(string destinationFileName)

Parameters

destinationFileName string

De route van het archief om te worden gecreëerd.Als de aangegeven bestandnaam wijst op een bestaande bestand, wordt het overgeschreven.

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

Het is mogelijk om een archief op te slaan op dezelfde route als het is geladen van. echter, dit is niet aanbevolen omdat deze benadering gebruikt het kopiëren naar een tijdelijke bestand.

Exceptions

ArgumentNullException

destinationFileName’ is null.

SecurityException

De oproepgever heeft niet de vereiste toestemming om toegang te krijgen.

ArgumentException

De destinationFileName’ is leeg, bevat alleen witte ruimtes of bevat invalide tekens.

UnauthorizedAccessException

De toegang tot het bestand destinationFileName’ wordt geweigerd.

PathTooLongException

De aangegeven destinationFileName’, bestandsnaam, of beide overschrijden de door het systeem gedefinieerde maximale lengte. Bijvoorbeeld, op Windows-gebaseerde platforms, moeten paden minder dan 248 tekens zijn, en bestandsnamen moeten minder dan 260 tekens zijn.

NotSupportedException

Het bestand bij destinationFileName’ bevat een kolom (:) in het midden van de string.

SaveSplit(String, SplitSevenZipArchiveSaveOptions)

Bespaart het multi-volume archief naar het bestemmingsdirector dat is verstrekt.

public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)

Parameters

destinationDirectory string

De route naar de directory waar archiefsegmenten moeten worden gecreëerd.

options SplitSevenZipArchiveSaveOptions

Opties voor het opslaan van bestanden, met inbegrip van bestandnaam.

Examples

using (SevenZipArchive archive = new SevenZipArchive())
{
    archive.CreateEntry("entry.bin", "data.bin");
    archive.SaveSplit(@"C:\Folder",  new SplitSevenZipArchiveSaveOptions("volume", 65536));
}

Remarks

Deze methode bestaat uit verschillende () bestanden filename.7z.001, filename.7z.002, …, filename.7z.(n).

Het is niet mogelijk om bestaande archief multi-volume te maken.

Exceptions

InvalidOperationException

Dit archief is vanaf de bestaande bron geopend.

ArgumentNullException

destinationDirectory’ is null.

SecurityException

De oproeker heeft niet de vereiste toestemming om toegang te krijgen tot de directory.

ArgumentException

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

PathTooLongException

De aangegeven route overschrijdt de door het systeem gedefinieerde maximale lengte.

 Nederlands