Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

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

Representa un solo archivo dentro del archivo 7z.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

Inheritance

object SevenZipArchiveEntry

Derived

SevenZipArchiveEntryEncrypted ,y, SevenZipArchiveEntryPlain

Implements

IArchiveFileEntry

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

Remarks

Cast a Aspose.Zip.SevenZip.SevenZipArchiveEntry instancia a Aspose.Zip.SevenZip.SevenZipArchiveEntryEncriptado para determinar si la entrada está cifrada o no.

Properties

CompressedSize

Tiene el tamaño de un archivo comprimido.

public ulong CompressedSize { get; }

Valor de la propiedad

ulong

CompressionSettings

Tiene ajustes para la compresión o la decompresión.

public SevenZipCompressionSettings CompressionSettings { get; }

Valor de la propiedad

SevenZipCompressionSettings

FileAttributes

Recibe atributos de archivo de un sistema de alojamiento.

protected FileAttributes FileAttributes { get; }

Valor de la propiedad

FileAttributes

IsDirectory

Recibe un valor que indica si la entrada representa un directorio.

public bool IsDirectory { get; }

Valor de la propiedad

bool

ModificationTime

Recibe la última fecha y hora modificada.

public DateTime ModificationTime { get; }

Valor de la propiedad

DateTime

Name

Obtenga el nombre de la entrada dentro del archivo.

public string Name { get; protected set; }

Valor de la propiedad

string

Source

Obtenga el flujo de fuente de datos para la entrada.

protected Stream Source { get; }

Valor de la propiedad

Stream

UncompressedSize

Tiene el tamaño de un archivo original.

public ulong UncompressedSize { get; }

Valor de la propiedad

ulong

Methods

Extract(Título, Título)

Extrae la entrada al sistema de archivos por el camino proporcionado.

public FileInfo Extract(string path, string password = null)

Parameters

path string

El camino hacia el archivo de destino.Si el archivo ya existe, será sobreescrito.

password string

contraseña opcional para la decrypción.

Returns

FileInfo

Información de archivo de un archivo compuesto.

Examples

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract("data.bin");
}

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.

InvalidDataException

El archivo está corrupto.

Extract(Cortesía, String)

Extrae la entrada a la corriente proporcionada.

public void Extract(Stream destination, string password = null)

Parameters

destination Stream

Destination stream. debe ser escrito.

password string

contraseña opcional para la decrypción.

Examples

Extraer una entrada de archivo zip con una contraseña.

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract(httpResponseStream);
}

Exceptions

ArgumentException

destination’ does not support writing.

InvalidOperationException

El archivo no se abre para extracción. - o - Esta entrada es un directorio.

InvalidDataException

Los datos incorrectos dentro de la entrada.

FinalizeCompressedData(El flujo, el byte[])

Escribe para el flujo de salida cualquier título que siga los datos comprimidos.

protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)

Parameters

outputStream Stream

El flujo de salida para la entrada.

encoderProperties byte [][]

Propiedades del compresor.

Returns

int

Número de bytes “técnicos” que se añadieron después de la entrada de un bloque de datos significativo.

GetDestinationStream(Stream)

El flujo de destino para la entrada, puede ser decorado.

protected abstract Stream GetDestinationStream(Stream outputStream)

Parameters

outputStream Stream

El flujo de salida para la entrada.

Returns

Stream

El flujo de destino para la compresión de entrada.

Open(El string)

Abre la entrada para extracción y proporciona un flujo con contenido de entrada.

public Stream Open(string password = null)

Parameters

password string

contraseña opcional para la decrypción.

Returns

Stream

El flujo que representa el contenido de la entrada.

Examples

El uso:Stream decompressed = entry.Open();

.NET 4.0 y superior - utilizar el método Stream.CopyTo:decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 y antes - copiar los bytes manualmente:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

Read from the stream to get the original content of a file. See examples section.

#### Exceptions

 [InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)

The archive is not opened for extraction. - or - This entry is a directory.

 [InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)

Wrong data within the entry.

### <a id="Aspose_Zip_SevenZip_SevenZipArchiveEntry_CompressionProgressed"></a> CompressionProgressed

Raises when a portion of raw stream compressed.

```csharp
public event EventHandler<progresseventargs> CompressionProgressed

Tipo de evento

EventHandler &ylt; ProgressEventArgs >

Examples

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Remarks

El mensaje de eventos es una instancia Aspose.Zip.SevenZip.SevenZipArchiveEntry.

No invoca en modo multithread para las entradas LZMA2.

 Español