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
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
sourceStream’ is not seekable.
sourceStream’ is null.
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
path’ is null.
El solicitante no tiene la autorización necesaria para acceder.
El path’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.
Se denega el acceso al archivo path.
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.
El archivo en path’ contiene una columna (:) en el medio de la línea.
El archivo no se encuentra.
La ruta especificada es invalida, como estar en un disco no mapeado.
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
parts’ is null.
parts’ has no entries.
El solicitante no tiene la autorización necesaria para acceder.
El camino a un archivo es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.
Se denega el acceso a un archivo.
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.
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
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
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
El camino a la directory’ es invalido, como estar en un disco no mapeado.
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
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
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
fileInfo’ is read-only or is a directory.
La ruta especificada es invalida, como estar en un disco no mapeado.
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
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
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
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
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
path’ is null.
El solicitante no tiene la autorización necesaria para acceder.
El path’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.
Se denega el acceso al archivo path.
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.
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
destinationDirectory’ is null.
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.
El llamador no tiene el permiso necesario para acceder al directorio existente.
Si el directorio no existe, el camino contiene un carácter colon (:) que no forma parte de una etiqueta de disco (“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 (:).
El directorio especificado por ruta es un archivo. -o- El nombre de red no es conocido.
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
output’ does not support seeking.
output’ is null.
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
destinationFileName’ is null.
El solicitante no tiene la autorización necesaria para acceder.
El destinationFileName’ es vacío, contiene solo espacios blancos, o contiene caracteres invalidos.
Se denega el acceso al archivo destinationFileName.
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.
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
Este archivo fue abierto desde la fuente existente.
destinationDirectory’ is null.
El llamador no tiene el permiso necesario para acceder al directorio.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
El camino especificado supera la longitud máxima definida por el sistema.