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
Derived
ArchiveEntryEncrypted ,y, ArchiveEntryPlain
Implements
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
CompressedSize
Recibe el tamaño del archivo comprimido.
public ulong CompressedSize { get; }
Valor de la propiedad
CompressionSettings
Tiene ajustes para la compresión o la decompresión.
public CompressionSettings CompressionSettings { get; }
Valor de la propiedad
DataSource
Fuente de entrada si la entrada se añadió al archivo, no se extrae.
public Stream DataSource { get; }
Valor de la propiedad
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
IsDirectory
Recibe un valor que indica si la entrada representa un directorio.
public bool IsDirectory { get; }
Valor de la propiedad
ModificationTime
Obtenga o establece la última fecha y hora modificada.
public DateTime ModificationTime { get; set; }
Valor de la propiedad
Name
Obtenga el nombre de la entrada dentro del archivo.
public string Name { get; protected set; }
Valor de la propiedad
UncompressedSize
Tiene el tamaño del archivo original.
public ulong UncompressedSize { get; }
Valor de la propiedad
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
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
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.
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
Los datos están corrompidos. -o- la verificación CRC o MAC ha fallado para la entrada.
La fuente es corrompida o no leible.
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
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
<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) => { 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) => { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };
Remarks
El mensaje de eventos es una instancia Aspose.Zip.ArchiveEntry.