Class ArchiveEntry

Class ArchiveEntry

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

Representa un solo archivo dentro del archivo.

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted ,y, ArchiveEntryPlain

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

Toma una instancia Aspose.Zip.ArchiveEntry en Aspose.Zip.ArchiveEntryEncrypted para determinar si la entrada está cifrada o no.

Constructors

ArchiveEntry(Compresiones, Compresiones, FuncEl UINT)

Inicia una nueva instancia de la clase Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)

Parameters

name string

Nombre de entrada.

compressionSettings CompressionSettings

Establecimientos para compresión o decompresión.

sourceProvider Func &ylt; Stream >

El método de devolución del flujo con los datos de entrada también para ser comprimido.

fileAttributes uint

Atributos del sistema de archivos.

ArchiveEntry(string, CompressionSettings, Stream, uint, FileSystemInfo)

Inicia una nueva instancia de la clase Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)

Parameters

name string

Nombre de entrada.

compressionSettings CompressionSettings

Establecimientos para compresión o decompresión.

source Stream

Flujo con datos de entrada ya sea para ser comprimido o para ser decomprimido.

fileAttributes uint

Atributos del sistema de archivos.

fileInfo FileSystemInfo

Archivo o directorio información de la entrada basada en.

Properties

Comment

Obtenga un comentario de la entrada dentro del archivo.

public string Comment { get; protected set; }

Valor de la propiedad

string

CompressedSize

Recibe el tamaño del archivo comprimido.

public ulong CompressedSize { get; }

Valor de la propiedad

ulong

CompressionSettings

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

public CompressionSettings CompressionSettings { get; }

Valor de la propiedad

CompressionSettings

DataSource

Fuente de entrada si la entrada se añadió al archivo, no se extrae.

public Stream DataSource { get; }

Valor de la propiedad

Stream

Remarks

Antes de asignarse, la fuente es nula. Esta fuente puede ser asignada dentro del método ‘Archive.Save’ en algunos casos.

FileAttributes

Recibe los atributos de archivo del sistema de host.

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

Obtenga o establece la última fecha y hora modificada.

public DateTime ModificationTime { get; set; }

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

UncompressedSize

Tiene el tamaño del 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

La información del archivo compuesto.

Examples

Extraer dos entradas de archivo zip, cada una con su propia contraseña

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract("first.bin", "first_pass");
        archive.Entries[1].Extract("second.bin", "second_pass");
    }
}

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.

InvalidDataException

Los datos están corrompidos. -o- la verificación CRC o MAC ha fallado para la entrada.

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 (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Exceptions

InvalidDataException

Los datos están corrompidos. -o- la verificación CRC o MAC ha fallado para la entrada.

IOException

La fuente es corrompida o no leible.

ArgumentException

destination’ does not support writing.

Open(El string)

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

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 &lt; (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

<p>Read from the stream to get the original content of a file. See examples section.</p>

#### Exceptions

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

The archive is in an incorrect state.

### <a id="Aspose_Zip_ArchiveEntry_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.ArchiveEntry.

ExtractionProgressed

Crece cuando se extrae una porción de corriente cruda.

public event EventHandler<progresseventargs> ExtractionProgressed

Tipo de evento

EventHandler &ylt; ProgressEventArgs >

Examples

archive.Entries[0].ExtractionProgressed += (s, e) =&gt; { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };

Remarks

El mensaje de eventos es una instancia Aspose.Zip.ArchiveEntry.

 Español