Class RarArchiveEntry

Class RarArchiveEntry

Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)

Representa um único arquivo dentro do arquivo compactado.

public abstract class RarArchiveEntry : IArchiveFileEntry

Herança

objectRarArchiveEntry

Derivados

RarArchiveEntryEncrypted, RarArchiveEntryPlain

Implementa

IArchiveFileEntry

Membros Herdados

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

Observações

Converta uma instância de Aspose.Zip.Rar.RarArchiveEntry para Aspose.Zip.Rar.RarArchiveEntryEncrypted para determinar se a entrada está criptografada ou não.

Propriedades

CompressedSize

Obtém o tamanho do arquivo compactado.

public ulong CompressedSize { get; }

Valor da Propriedade

ulong

CreationTime

Obtém a data e hora de criação.

public DateTime CreationTime { get; }

Valor da Propriedade

DateTime

IsDirectory

Obtém um valor indicando se a entrada representa um diretório.

public bool IsDirectory { get; }

Valor da Propriedade

bool

LastAccessTime

Obtém a data e hora do último acesso.

public DateTime LastAccessTime { get; }

Valor da Propriedade

DateTime

ModificationTime

Obtém a data e hora da última modificação.

public DateTime ModificationTime { get; }

Valor da Propriedade

DateTime

Name

Obtém o nome da entrada dentro do arquivo compactado.

public string Name { get; }

Valor da Propriedade

string

Source

Obtém o fluxo de dados da fonte para a entrada.

protected Stream Source { get; set; }

Valor da Propriedade

Stream

UncompressedSize

Obtém o tamanho do arquivo original.

public ulong UncompressedSize { get; }

Valor da Propriedade

ulong

Métodos

Extract(string, string)

Extrai a entrada para o sistema de arquivos pelo caminho fornecido.

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

Parâmetros

path string

O caminho para o arquivo de destino. Se o arquivo já existir, ele será sobrescrito.

password string

Senha opcional para descriptografia.

Retorna

FileInfo

As informações do arquivo composto.

Exemplos

Extrair duas entradas do arquivo rar.

using (FileStream rarFile = File.Open("archive.rar", FileMode.Open))
{
    using (RarArchive archive = new RarArchive(rarFile))
    {
        archive.Entries[0].Extract("first.bin", "pass");
        archive.Entries[1].Extract("second.bin", "pass");
    }
}

Exceções

ArgumentNullException

path é nulo.

SecurityException

O chamador não tem a permissão necessária para acessar.

ArgumentException

O path está vazio, contém apenas espaços em branco ou contém caracteres inválidos.

UnauthorizedAccessException

O acesso ao arquivo path é negado.

PathTooLongException

O path, nome do arquivo ou ambos excedem o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas em Windows, os caminhos devem ter menos de 248 caracteres e os nomes dos arquivos devem ter menos de 260 caracteres.

NotSupportedException

O arquivo em path contém dois pontos (:) no meio da string.

FileNotFoundException

O arquivo não foi encontrado.

DirectoryNotFoundException

O caminho especificado é inválido, como estar em uma unidade não mapeada.

IOException

O arquivo já está aberto.

InvalidDataException

Os dados estão corrompidos. -ou- A verificação CRC ou MAC falhou para a entrada.

Extract(Stream, string)

Extrai a entrada para o fluxo fornecido.

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

Parâmetros

destination Stream

Fluxo de destino. Deve ser gravável.

password string

Senha opcional para descriptografia.

Exemplos

Extrair uma entrada do arquivo rar com senha.

using (FileStream rarFile = File.Open("archive.zip", FileMode.Open))
{
    using (RarArchive archive = new RarArchive(rarFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Exceções

InvalidDataException

A verificação CRC ou MAC falhou para a entrada.

ArgumentException

destination não suporta gravação.

InvalidDataException

Os dados estão corrompidos. -ou- A verificação CRC ou MAC falhou para a entrada.

Open(string)

Abre a entrada para extração e fornece um fluxo com o conteúdo da entrada descompactada.

public Stream Open(string password = null)

Parâmetros

password string

Senha opcional para descriptografia. Também pode ser definida dentro de Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword.

Retorna

Stream

O fluxo que representa o conteúdo da entrada.

Exemplos

Uso: Stream decompressed = entry.Open();

.NET 4.0 e superior - use o método Stream.CopyTo: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 e anterior - copie os bytes manualmente:

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

#### Observações

<p>Leia do fluxo para obter o conteúdo original do arquivo. Veja a seção de exemplos.</p>

### <a id="Aspose_Zip_Rar_RarArchiveEntry_ExtractionProgressed"></a> ExtractionProgressed

Dispara quando uma parte do fluxo bruto é extraída.

```csharp
public event EventHandler<progresseventargs> ExtractionProgressed

Tipo de Evento

EventHandler<ProgressEventArgs&gt;

Exemplos

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

Observações

O remetente do evento é uma instância de Aspose.Zip.Rar.RarArchiveEntry.

 Português