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
Derived
ArchiveEntryEncrypted , ArchiveEntryPlain
Implements
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à
CompressedSize
Riceve la dimensione del file compreso.
public ulong CompressedSize { get; }
Valore di proprietà
CompressionSettings
Riceve le impostazioni per la compressione o la decompressione.
public CompressionSettings CompressionSettings { get; }
Valore di proprietà
DataSource
Fonte dell’ingresso se l’iscrizione è stata aggiunta all’archivio, non estratta.
public Stream DataSource { get; }
Valore di proprietà
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à
IsDirectory
Riceve un valore che indica se l’ingresso rappresenta un directory.
public bool IsDirectory { get; }
Valore di proprietà
ModificationTime
Riceve o impone l’ultima data e l’ora modificati.
public DateTime ModificationTime { get; set; }
Valore di proprietà
Name
Riceve il nome dell’ingresso all’interno dell’archivio.
public string Name { get; protected set; }
Valore di proprietà
UncompressedSize
Ottieni la dimensione del file originale.
public ulong UncompressedSize { get; }
Valore di proprietà
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
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
path’ is null.
Il chiamante non ha il permesso di accesso richiesto.
La path’ è vuota, contiene solo spazi bianchi, o contiene caratteri invalidi.
L’accesso al file path" è rifiutato.
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.
Il file in path’ contiene una colonna (:) nel mezzo della riga.
Il file non è trovato.
Il percorso specificato è invalido, ad esempio essere su un drive non mappato.
Il file è già aperto.
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
I dati sono corrotti. -o- la verifica CRC o MAC è fallita per l’ingresso.
La fonte è corrotta o non leggibile.
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
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
<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) => { 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) => { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };
Remarks
Il messaggero di eventi è una instanza Aspose.Zip.ArchiveEntry.