Class SevenZipArchive

Class SevenZipArchive

Nombre del espacio: Aspose.Zip.SevenZip Asamblea: Aspose.Zip.dll (25.5.0)

Esta clase representa el archivo 7z. Utilice para compilar y extraer archivos 7z.

public class SevenZipArchive : IArchive, IDisposable

Inheritance

object SevenZipArchive

Implements

IArchive ,y, IDisposable

Miembros heredados

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

Constructors

SevenZipArchive(SevenZipEntrySettings)

Inicia una nueva instancia de la clase Aspose.Zip.SevenZip.SevenZipArchive con configuraciones opcionales para sus entradas.

public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)

Parameters

newEntrySettings SevenZipEntrySettings

Las configuraciones de compresión y cifrado utilizadas para los artículos de Aspose.Zip.SevenZip.SevenZipArchiveEntry recientemente añadidos.Si no se especificó, se utilizaría la composición LZMA sin cifrado.

Examples

El siguiente ejemplo muestra cómo comprimir un solo archivo con la configuración predeterminada: Compresión LZMA sin cifrado.

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

SevenZipArchive(Cortesía, String)

Inicia una nueva instancia de la clase Aspose.Zip.SevenZip.SevenZipArchive y compone una lista de entradas que se puede extraer del archivo.

public SevenZipArchive(Stream sourceStream, string password = null)

Parameters

sourceStream Stream

La fuente del archivo.

password string

La contraseña opcional para la decrypción.Si los nombres de archivos están cifrados, debe estar presente.

Examples

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

Remarks

Ver Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) método para descomprimir.

Exceptions

ArgumentException

sourceStream’ is not seekable.

ArgumentNullException

sourceStream’ is null.

NotImplementedException

El archivo contiene más de un codificador. ahora sólo se apoya la composición LZMA.

SevenZipArchive(Título, Título)

Inicia una nueva instancia de la clase Aspose.Zip.SevenZip.SevenZipArchive y compone una lista de entradas que se puede extraer del archivo.

public SevenZipArchive(string path, string password = null)

Parameters

path string

El completo cualificado o el camino relativo al archivo.

password string

La contraseña opcional para la decrypción.Si los nombres de archivos están cifrados, debe estar presente.

Examples

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

Remarks

Ver Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) método para descomprimir.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

El solicitante no tiene la autorización necesaria para acceder.

ArgumentException

El path’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.

UnauthorizedAccessException

Se denega el acceso al archivo path.

PathTooLongException

La ruta path", nombre de archivo, o ambos superan la longitud máxima definida por el sistema. Por ejemplo, en las plataformas basadas en Windows, los caminos deben ser menos de 248 caracteres, y los nombres de archivo deben ser menos de 260 caracteres.

NotSupportedException

El archivo en path’ contiene una columna (:) en el medio de la línea.

FileNotFoundException

El archivo no se encuentra.

DirectoryNotFoundException

La ruta especificada es invalida, como estar en un disco no mapeado.

IOException

El archivo ya está abierto.

SevenZipArchive(El string[][], El string)

Inicia una nueva instancia de la clase Aspose.Zip.SevenZip.SevenZipArchive desde el archivo multi-volumen 7z y compone una lista de entradas que se puede extraer del archivo.

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

Parameters

parts string [][]

Pasos a cada segmento de archivo multi-volumen 7z respetando el orden

password string

La contraseña opcional para la decrypción.Si los nombres de archivos están cifrados, debe estar presente.

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

El solicitante no tiene la autorización necesaria para acceder.

ArgumentException

El camino a un archivo es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.

UnauthorizedAccessException

Se denega el acceso a un archivo.

PathTooLongException

El camino especificado a una parte, nombre de archivo, o ambos supera la longitud máxima definida por el sistema. Por ejemplo, en las plataformas basadas en Windows, los caminos deben ser menos de 248 caracteres y los nombres de archivo deben ser menos de 260 caracteres.

NotSupportedException

El archivo en un camino contiene una columna (:) en el medio de la cinta.

Properties

Entries

Obtiene las entradas de Aspose.Zip.SevenZip.SevenZipArchiveEntry tipo que constituye el archivo.

public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }

Valor de la propiedad

ReadOnlyCollection &ylt; SevenZipArchiveEntry >

NewEntrySettings

Las configuraciones de compresión y cifrado utilizadas para los artículos de Aspose.Zip.SevenZip.SevenZipArchiveEntry recientemente añadidos.

public SevenZipEntrySettings NewEntrySettings { get; }

Valor de la propiedad

SevenZipEntrySettings

Methods

CreateEntries(Siguiente Entrada siguiente: Bool)

Adicionar al archivo todos los archivos y directorios de forma recurrente en el directorio dado.

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

Parameters

directory DirectoryInfo

Directorios para compresión.

includeRootDirectory bool

Indica si incluir el directorio de raíz mismo o no.

Returns

SevenZipArchive

El archivo con entradas compuestas.

Examples

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

Exceptions

DirectoryNotFoundException

El camino a la directory’ es invalido, como estar en un disco no mapeado.

SecurityException

El llamador no tiene el permiso necesario para acceder a la directory'.

CreateEntries(Cortesía, Bool)

Adicionar al archivo todos los archivos y directorios de forma recurrente en el directorio dado.

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

Parameters

sourceDirectory string

Directorios para compresión.

includeRootDirectory bool

Indica si incluir el directorio de raíz mismo o no.

Returns

SevenZipArchive

El archivo con entradas compuestas.

Examples

Componer archivo 7z con la compresión LZMA2.

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

CreateEntry(Título, FileInfo, Bool, SevenZipEntrySettings)

Crea una entrada única dentro del archivo.

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

Parameters

name string

El nombre de la entrada.

fileInfo FileInfo

Los metadatos del archivo deben ser comprimidos.

openImmediately bool

Es cierto, si se abre el archivo de inmediato, de lo contrario se abre el archivo en el archivo de almacenamiento.

newEntrySettings SevenZipEntrySettings

Las configuraciones de compresión y cifrado se utilizan para agregar el elemento Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Returns

SevenZipArchiveEntry

Siete puntos de entrada de Zip.

Examples

Componer archivos con entradas cifradas con diferentes contraseñas cada uno.

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

El nombre de entrada se establece únicamente dentro del parámetro.El nombre de archivo proporcionado en el parámetro no afecta al nombre de entrada.

Si el archivo se abre inmediatamente con el parámetro se bloquea hasta que el archivo se salva.

Exceptions

UnauthorizedAccessException

fileInfo’ is read-only or is a directory.

DirectoryNotFoundException

La ruta especificada es invalida, como estar en un disco no mapeado.

IOException

El archivo ya está abierto.

CreateEntry(SiguienteSiguienteSiguienteSiguienteSiguienteSiguienteSiguienteSiguienteSiguienteSiguiente)

Crea una entrada única dentro del archivo.

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

Parameters

name string

El nombre de la entrada.

source Stream

El flujo de entrada para la entrada.

newEntrySettings SevenZipEntrySettings

Las configuraciones de compresión y cifrado se utilizan para agregar el elemento Aspose.Zip.SevenZip.SevenZipArchiveEntry.

fileInfo FileSystemInfo

Los metadatos del archivo o de la carpeta para ser comprimido.

Returns

SevenZipArchiveEntry

Séptima instancia de entrada.

Examples

Componer archivo con entrada codificada comprimida LZMA2.

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

El nombre de entrada se establece únicamente dentro del parámetro.El nombre de archivo proporcionado en el parámetro no afecta al nombre de entrada.

puede referirse a System.IO.DirectoryInfo si la entrada es directorio.

Exceptions

InvalidOperationException

Tanto source’ y fileInfo’ son null o source’ es null y fileInfo’ es para directorio.

CreateEntry(Síntomas, Síntomas, SevenZipEntrySettings)

Crea una entrada única dentro del archivo.

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

Parameters

name string

El nombre de la entrada.

source Stream

El flujo de entrada para la entrada.

newEntrySettings SevenZipEntrySettings

Las configuraciones de compresión y cifrado se utilizan para agregar el elemento Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Returns

SevenZipArchiveEntry

Introducción de Zip.

Examples

Componer archivo 7z con LZMA2 compresión y cifrado de todas las entradas.

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(Síntomas, Síntomas, Bool, SevenZipEntrySettings)

Crea una entrada única dentro del archivo.

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

Parameters

name string

El nombre de la entrada.

path string

El nombre totalmente cualificado del nuevo archivo, o el nombre de archivo relativo que se comprime.

openImmediately bool

Es cierto, si se abre el archivo de inmediato, de lo contrario se abre el archivo en el archivo de almacenamiento.

newEntrySettings SevenZipEntrySettings

Las configuraciones de compresión y cifrado se utilizan para agregar el elemento Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Returns

SevenZipArchiveEntry

Introducción de Zip.

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

El nombre de entrada se establece únicamente dentro del parámetro.El nombre de archivo proporcionado en el parámetro no afecta al nombre de entrada.

Si el archivo se abre inmediatamente con el parámetro se bloquea hasta que el archivo se salva.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

El solicitante no tiene la autorización necesaria para acceder.

ArgumentException

El path’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.

UnauthorizedAccessException

Se denega el acceso al archivo path.

PathTooLongException

La ruta path", nombre de archivo, o ambos superan la longitud máxima definida por el sistema. Por ejemplo, en las plataformas basadas en Windows, los caminos deben ser menos de 248 caracteres, y los nombres de archivo deben ser menos de 260 caracteres.

NotSupportedException

El archivo en path’ contiene una columna (:) en el medio de la línea.

Dispose()

Desempeña tareas definidas por la aplicación asociadas con la liberación, liberación o restablecimiento de recursos no gestionados.

public void Dispose()

Dispose(BOOL)

Desempeña tareas definidas por la aplicación asociadas con la liberación, liberación o restablecimiento de recursos no gestionados.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Los recursos gestionados deben ser eliminados.

ExtractToDirectory(Título, Título)

Extracta todos los archivos en el directorio proporcionado.

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

Parameters

destinationDirectory string

El camino hacia el directorio para colocar los archivos extraídos.

password string

contraseña opcional para la decrypción de contenidos.

Examples

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

Remarks

Si el directorio no existe, se crear.

Si los nombres de archivos están cifrados, proporcione una contraseña en Aspose.Zip.SevenZop.SevenZapArchive.#ctor(System.String,Systems. String) o __ WL51.ZIP.seven ZipArxive .# ctor (Sistem.IO.Stream,systema.string).

Exceptions

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

Por ejemplo, en las plataformas basadas en Windows, los caminos deben ser menos de 248 caracteres y los nombres de archivo deben ser menos de 260 caracteres.

SecurityException

El llamador no tiene el permiso necesario para acceder al directorio existente.

NotSupportedException

Si el directorio no existe, el camino contiene un carácter colon (:) que no forma parte de una etiqueta de disco (“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

El directorio especificado por ruta es un archivo. -o- El nombre de red no es conocido.

InvalidDataException

El archivo está corrupto.

Save(Stream)

Salva archivo 7z a la corriente proporcionada.

public void Save(Stream output)

Parameters

output Stream

El flujo de destino.

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

debe ser buscable.

Exceptions

ArgumentException

output’ does not support seeking.

ArgumentNullException

output’ is null.

InvalidOperationException

El encoder no ha comprimido los datos.

Save(El string)

Salva archivo a un archivo de destino proporcionado.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Si el nombre de archivo especificado indica a un archivo existente, se reescribir.

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

Es posible guardar un archivo en el mismo camino que fue cargado de. sin embargo, esto no se recomienda porque este enfoque utiliza la copia a un archivo temporal.

Exceptions

ArgumentNullException

destinationFileName’ is null.

SecurityException

El solicitante no tiene la autorización necesaria para acceder.

ArgumentException

El destinationFileName’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.

UnauthorizedAccessException

Se denega el acceso al archivo destinationFileName.

PathTooLongException

La destinationFileName’, nombre de archivo, o ambos superan la longitud máxima definida por el sistema. Por ejemplo, en las plataformas basadas en Windows, los caminos deben ser menos de 248 caracteres, y los nombres de archivo deben ser menos de 260 caracteres.

NotSupportedException

El archivo en la destinationFileName’ contiene una columna (:) en el medio de la línea.

SaveSplit(Cortesía, SplitSevenZipArchiveSaveOptions)

Salva el archivo de varios volúmenes a la guía de destino proporcionada.

public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)

Parameters

destinationDirectory string

El camino hacia el directorio donde se crean los segmentos de archivo.

options SplitSevenZipArchiveSaveOptions

Opciones de almacenamiento de archivos, incluido el nombre de archivo.

Examples

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

Remarks

Este método compone varios () archivos filename.7z.001, filename.7z.002, …, filename.7z.(n).

No se puede hacer archivos existentes multi-volumen.

Exceptions

InvalidOperationException

Este archivo fue abierto desde la fuente existente.

ArgumentNullException

destinationDirectory’ is null.

SecurityException

El llamador no tiene el permiso necesario para acceder al directorio.

ArgumentException

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

PathTooLongException

El camino especificado supera la longitud máxima definida por el sistema.

 Español