Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

Le nom : Aspose.Zip.SevenZip Assemblée: Aspose.Zip.dll (25.5.0)

Represente un singolo file all’interno dell’archivio 7z.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

Inheritance

object SevenZipArchiveEntry

Derived

SevenZipArchiveEntryEncrypted , SevenZipArchiveEntryPlain

Implements

IArchiveFileEntry

I membri ereditari

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

Remarks

Cast un Aspose.Zip.SevenZip.SevenZipArchiveEntry instanza a Aspose.Zip.SevenZip.SevenZipArchiveEntryCryptato per determinare se l’ingresso è crittografato o meno.

Properties

CompressedSize

Riceve la dimensione di un file compreso.

public ulong CompressedSize { get; }

Valore di proprietà

ulong

CompressionSettings

Riceve le impostazioni per la compressione o la decompressione.

public SevenZipCompressionSettings CompressionSettings { get; }

Valore di proprietà

SevenZipCompressionSettings

FileAttributes

Riceve attributi di file da un sistema host.

protected FileAttributes FileAttributes { get; }

Valore di proprietà

FileAttributes

IsDirectory

Riceve un valore che indica se l’ingresso rappresenta un directory.

public bool IsDirectory { get; }

Valore di proprietà

bool

ModificationTime

Riceve l’ultima data e l’ora modificata.

public DateTime ModificationTime { get; }

Valore di proprietà

DateTime

Name

Riceve il nome dell’ingresso all’interno dell’archivio.

public string Name { get; protected set; }

Valore di proprietà

string

Source

Riceve il flusso di fonte dati per l’ingresso.

protected Stream Source { get; }

Valore di proprietà

Stream

UncompressedSize

Riceve la dimensione di un file originale.

public ulong UncompressedSize { get; }

Valore di proprietà

ulong

Methods

Extract(String et String)

Elimina l’ingresso nel file system attraverso il percorso fornito.

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

Parameters

path string

Il percorso verso il file di destinazione. se il file esiste già, sarà sovrappeso.

password string

Password opzionale per la decrittura.

Returns

FileInfo

Il file info di un file composito.

Examples

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

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Il chiamante non ha il permesso di accesso richiesto.

ArgumentException

La path’ è vuota, contiene solo spazi bianchi, o contiene caratteri invalidi.

UnauthorizedAccessException

L’accesso al file path" è rifiutato.

PathTooLongException

La specifica path’, nome del file, o entrambi superano la lunghezza massima definita dal sistema. ad esempio, su piattaforme basate su Windows, i percorsi devono essere meno di 248 caratteri, e i nomi del file devono essere meno di 260 caratteri.

NotSupportedException

Il file in path’ contiene una colonna (:) nel mezzo della riga.

InvalidDataException

L’archivio è corrotto.

Extract(Téléchargement, string)

Elimina l’ingresso nel flusso fornito.

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

Parameters

destination Stream

Destinazione Stream. deve essere scritta.

password string

Password opzionale per la decrittura.

Examples

Inserisci un file zip con una password.

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

Exceptions

ArgumentException

destination’ does not support writing.

InvalidOperationException

L’archivio non è aperto per l’estrazione. - o - Questa voce è un directory.

InvalidDataException

Dati sbagliati all’interno dell’ingresso.

FinalizeCompressedData(Le courant, le byte[])

Scrivi al flusso di uscita qualsiasi titolo che segue i dati compressi.

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

Parameters

outputStream Stream

Il flusso di uscita per l’ingresso.

encoderProperties byte [ ]

Proprietà del compressore.

Returns

int

Numero di “tecnici” byte che sono stati aggiunti dopo l’ingresso di un blocco di dati significativo.

GetDestinationStream(Stream)

Il flusso di destinazione per l’ingresso, può essere decorato.

protected abstract Stream GetDestinationStream(Stream outputStream)

Parameters

outputStream Stream

Il flusso di uscita per l’ingresso.

Returns

Stream

Il flusso di destinazione per la compressione di ingresso.

Open(Le string)

Apri l’ingresso per l’estrazione e fornisce un flusso con contenuti di ingresso.

public Stream Open(string password = null)

Parameters

password string

Password opzionale per la decrittura.

Returns

Stream

Il flusso che rappresenta il contenuto dell’ingresso.

Examples

Uso di:Stream decompressed = entry.Open();

.NET 4.0 e superiore - utilizza il metodo Stream.CopyTo:decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 e prima - copiare manualmente i byti:

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 di evento

EventHandler di < ProgressEventArgs >

Examples

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

Remarks

Il messaggero di eventi è un caso Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Non invoca in modalità multithread per le entrate LZMA2.

 Français