Class ArchiveEntry
Namn på plats: Aspose.Zip Sammanfattning: Aspose.Zip.dll (25.5.0)
Representerar en enda fil inom arkivet.
public abstract class ArchiveEntry : IArchiveFileEntry
Inheritance
Derived
ArchiveEntryEncrypted , ArchiveEntryPlain
Implements
Arvsmedlemmar
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Ange en Aspose.Zip.ArchiveEntry instans till Aspose.Zip.ArchiveEntryKrypterad för att avgöra om inmatningen är krypterad eller inte.
Constructors
ArchiveEntry(sträng, CompressionSettings, Funcoch uint)
Initialiserar en ny instans av Aspose.Zip.ArchiveEntry klass.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)
Parameters
name
string
Entré namn .
compressionSettings
CompressionSettings
Ställningar för kompression eller dekompression.
sourceProvider
Func
ochlt;
Stream
>
Metoden att returnera ström med inmatningsdata ska antingen komprimeras.
fileAttributes
uint
Attribut från filsystemet.
ArchiveEntry(sträng, CompressionSettings, Stream, uint, FileSystemInfo)
Initialiserar en ny instans av Aspose.Zip.ArchiveEntry klass.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)
Parameters
name
string
Entré namn .
compressionSettings
CompressionSettings
Ställningar för kompression eller dekompression.
source
Stream
Stream med inmatningsdata antingen för att komprimeras eller för att dekomprimeras.
fileAttributes
uint
Attribut från filsystemet.
fileInfo
FileSystemInfo
Arkiv eller katalog information ingång baserad på.
Properties
Comment
Får en kommentar om ingången i arkivet.
public string Comment { get; protected set; }
Fastighetsvärde
CompressedSize
Få storlek på den komprimerade filen.
public ulong CompressedSize { get; }
Fastighetsvärde
CompressionSettings
Få inställningar för kompression eller dekompression.
public CompressionSettings CompressionSettings { get; }
Fastighetsvärde
DataSource
Källan för inmatningen om den läggs till i arkivet, inte extraheras.
public Stream DataSource { get; }
Fastighetsvärde
Remarks
Innan tilldelas, är källan noll. Denna källor kan tilldelas inom “Archive.Save” metod i vissa fall.
FileAttributes
Få filattribut från värdsystemet.
protected FileAttributes FileAttributes { get; }
Fastighetsvärde
IsDirectory
Det får ett värde som anger om entréen representerar en katalog.
public bool IsDirectory { get; }
Fastighetsvärde
ModificationTime
Få eller ange senast modifierad datum och tid.
public DateTime ModificationTime { get; set; }
Fastighetsvärde
Name
Få namn på ingången inom arkivet.
public string Name { get; protected set; }
Fastighetsvärde
UncompressedSize
Få storlek på den ursprungliga filen.
public ulong UncompressedSize { get; }
Fastighetsvärde
Methods
Extract(String och String)
Extraherar ingången till filsystemet genom den föreslagna vägen.
public FileInfo Extract(string path, string password = null)
Parameters
path
string
Vägen till målfilen. om filen redan existerar, kommer den att översättas.
password
string
Alternativt lösenord för dekryptering.
Returns
Information om den sammansatta filen.
Examples
Hämta två inmatningar i zip arkiv, var och en med eget lösenord
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.
Sökanden har inte behörig tillstånd att komma åt.
path’ är tom, innehåller endast vita utrymmen, eller innehåller olagliga tecken.
Tillgång till filen path" vägras.
Den angivna path’, filnamn, eller båda överstiger den systemdefinierade maximala längden. Till exempel på Windows-baserade plattformar måste vägar vara mindre än 248 tecken, och filnamn måste vara mindre än 260 tecken.
Filen på path’ innehåller en kolumn (:) i mitten av raden.
Filen hittades inte.
Den angivna vägen är ogiltig, t.ex. att vara på en okartad disk.
Filen är redan öppen.
Data är korrupta. -eller- CRC eller MAC verifiering misslyckades för inmatningen.
Extract(Ström, ström)
Extraherar ingången till den tillhandahållna strömmen.
public void Extract(Stream destination, string password = null)
Parameters
destination
Stream
Destination stream. måste vara skribar.
password
string
Alternativt lösenord för dekryptering.
Examples
Extract en inmatning av zip arkiv med lösenord.
using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
using (Archive archive = new Archive(zipFile))
{
archive.Entries[0].Extract(httpResponseStream, "p@s$");
}
}
Exceptions
Data är korrupta. -eller- CRC eller MAC verifiering misslyckades för inmatningen.
Källan är korrupt eller inte läsbar.
destination’ does not support writing.
Open(Sträng)
Öppnar entréen för utvinning och ger en ström med dekomprimerad entréinnehåll.
public Stream Open(string password = null)
Parameters
password
string
Alternativt lösenord för dekryptering.
Returns
Strömmen som representerar innehållet i ingången.
Examples
Användning :Stream decompressed = entry.Open();
.NET 4.0 och högre - använd Stream.CopyTo metod:decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 och tidigare - kopiera byter manuellt:
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
Event typ
EventHandler ochlt; ProgressEventArgs >
Examples
archive.Entries[0].CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
Remarks
Event sender är en Aspose.Zip.ArchiveEntry instans.
ExtractionProgressed
Ökar när en del av råströmmen extraheras.
public event EventHandler<progresseventargs> ExtractionProgressed
Event typ
EventHandler ochlt; ProgressEventArgs >
Examples
archive.Entries[0].ExtractionProgressed += (s, e) => { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };
Remarks
Event sender är en Aspose.Zip.ArchiveEntry instans.