Class ArchiveEntry

Class ArchiveEntry

Il nome: Aspose.Zip Assemblea: Aspose.Zip.dll (25.5.0)

Presenta un singolo file all’interno dell’archivio.

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted , ArchiveEntryPlain

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

Inserisci un esempio Aspose.Zip.ArchiveEntry in Aspose.Zip.ArchiveEntryCryptato per determinare se l’ingresso è crittografato o meno.

Constructors

ArchiveEntry(String, CompressioneSettings, Funcdi uint)

Inizia una nuova instanza della classe Aspose.Zip.ArchiveEntry.

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

Parameters

name string

Nome di ingresso.

compressionSettings CompressionSettings

Impostazioni per compressione o decompressione.

sourceProvider Func di < Stream >

Il metodo di ritorno del flusso con i dati di ingresso sia per essere compreso.

fileAttributes uint

Attributi del file system.

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

Inizia una nuova instanza della classe Aspose.Zip.ArchiveEntry.

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

Parameters

name string

Nome di ingresso.

compressionSettings CompressionSettings

Impostazioni per compressione o decompressione.

source Stream

Il flusso con i dati di ingresso sia per essere compressi o per essere decompressi.

fileAttributes uint

Attributi del file system.

fileInfo FileSystemInfo

File o directory info l’ingresso basato su.

Properties

Comment

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

public string Comment { get; protected set; }

Valore di proprietà

string

CompressedSize

Riceve la dimensione del file compreso.

public ulong CompressedSize { get; }

Valore di proprietà

ulong

CompressionSettings

Riceve le impostazioni per la compressione o la decompressione.

public CompressionSettings CompressionSettings { get; }

Valore di proprietà

CompressionSettings

DataSource

Fonte dell’ingresso se l’iscrizione è stata aggiunta all’archivio, non estratta.

public Stream DataSource { get; }

Valore di proprietà

Stream

Remarks

Prima di essere assegnato, la fonte è zero.Questa fonte può essere assegnata all’interno del metodo ‘Archive.Save’ in alcuni casi.

FileAttributes

Riceve attributi di file dal 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 o impone l’ultima data e l’ora modificati.

public DateTime ModificationTime { get; set; }

Valore di proprietà

DateTime

Name

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

public string Name { get; protected set; }

Valore di proprietà

string

UncompressedSize

Ottieni la dimensione del file originale.

public ulong UncompressedSize { get; }

Valore di proprietà

ulong

Methods

Extract(String e 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 del file composito.

Examples

Estratto due entrate di archivio zip, ognuna con la propria password

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

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.

FileNotFoundException

Il file non è trovato.

DirectoryNotFoundException

Il percorso specificato è invalido, ad esempio essere su un drive non mappato.

IOException

Il file è già aperto.

InvalidDataException

I dati sono corrotti. -o- la verifica CRC o MAC è fallita per l’ingresso.

Extract(Strumento, Strumento)

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

Exceptions

InvalidDataException

I dati sono corrotti. -o- la verifica CRC o MAC è fallita per l’ingresso.

IOException

La fonte è corrotta o non leggibile.

ArgumentException

destination’ does not support writing.

Open(String)

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

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 &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 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 è una instanza Aspose.Zip.ArchiveEntry.

ExtractionProgressed

Aumenta quando viene estratta una porzione di flusso crudo.

public event EventHandler<progresseventargs> ExtractionProgressed

Tipo di evento

EventHandler di < ProgressEventArgs >

Examples

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

Remarks

Il messaggero di eventi è una instanza Aspose.Zip.ArchiveEntry.

 Italiano