Class ArchiveEntry
nazivni prostor: Aspose.Zip Sastav: Aspose.Zip.dll (25.5.0)
Predstavlja jedinstvenu datoteku unutar arhiva.
public abstract class ArchiveEntry : IArchiveFileEntry
Inheritance
Derived
ArchiveEntryEncrypted , ArchiveEntryPlain
Implements
naslijeđeni članovi
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Ustavite primjer Aspose.Zip.ArchiveEntry na Aspose.Zip.ArchiveEntryŠifrirano kako biste utvrdili je li ulaz šifrirana ili ne.
Constructors
ArchiveEntry(String, Kompresijske postavke, FuncUnt)
Inicijalizira novu primjenu klase Aspose.Zip.ArchiveEntry.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)
Parameters
name
string
Naziv ulaznice
compressionSettings
CompressionSettings
Sastav za kompresije ili dekompresije.
sourceProvider
Func
<
Stream
>
Metoda vraćanja struje s ulaznim podacima ili da se komprimira.
fileAttributes
uint
Prilike iz sustava datoteke.
ArchiveEntry(string, CompressionSettings, Stream, uint, FileSystemInfo)
Inicijalizira novu primjenu klase Aspose.Zip.ArchiveEntry.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)
Parameters
name
string
Naziv ulaznice
compressionSettings
CompressionSettings
Sastav za kompresije ili dekompresije.
source
Stream
Prijenos s ulaznim podacima ili da se kompresira ili da se dekompresira.
fileAttributes
uint
Prilike iz sustava datoteke.
fileInfo
FileSystemInfo
File ili directory info ulaz na temelju.
Properties
Comment
Obavijest o ulasku u arhiv.
public string Comment { get; protected set; }
Vrijednost nekretnina
CompressedSize
Dobiva veličinu komprimiranog datoteke.
public ulong CompressedSize { get; }
Vrijednost nekretnina
CompressionSettings
Dobiva postavke za kompresije ili dekompresije.
public CompressionSettings CompressionSettings { get; }
Vrijednost nekretnina
DataSource
Izvor za ulazak ako je ulaz dodan arhivu, nije izvučen.
public Stream DataSource { get; }
Vrijednost nekretnina
Remarks
Prije dodjele, izvor je nula.Ovaj izvor može biti dodijeljen u metodi ‘Archive.Save’ u nekim slučajevima.
FileAttributes
Dobiva datoteke atribute iz sustava domaćina.
protected FileAttributes FileAttributes { get; }
Vrijednost nekretnina
IsDirectory
Dobiva vrijednost koja ukazuje na to da li ulaz predstavlja direktoriju.
public bool IsDirectory { get; }
Vrijednost nekretnina
ModificationTime
Pronađite ili postavite posljednji izmijenjen datum i vrijeme.
public DateTime ModificationTime { get; set; }
Vrijednost nekretnina
Name
Dobivaju ime ulaza u arhivu.
public string Name { get; protected set; }
Vrijednost nekretnina
UncompressedSize
Dobiva veličinu izvorne datoteke.
public ulong UncompressedSize { get; }
Vrijednost nekretnina
Methods
Extract(String, String i String)
Izvlači ulaz u sustav datoteke putem predviđenog puta.
public FileInfo Extract(string path, string password = null)
Parameters
path
string
Put do dosjea odredišta.Ako datoteka već postoji, bit će prepisana.
password
string
Opcionalna lozinka za dešifriranje.
Returns
Informacije o sastavljenom datoteku.
Examples
Izvadite dva ulaza iz zip arhiva, svaki sa vlastitim lozinkom
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.
Pozivač nema potrebnu dozvolu za pristup.
path’ je prazan, sadrži samo bijele prostore, ili sadrži nevažeće znakove.
Pristup datoteci path" je odbijen.
Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
File na path’ sadrži kolona (:) u sredini trake.
Dosje nije pronađeno.
Navedeni put je nevažeći, na primjer, biti na nemapiranom pogonu.
Dosje je već otvoreno.
CRC ili MAC verifikacija nije uspjela za ulazak.
Extract(Slijedeći članakString)
Izvlači ulaz u pruženi tok.
public void Extract(Stream destination, string password = null)
Parameters
destination
Stream
Destination stream. mora biti pismen.
password
string
Opcionalna lozinka za dešifriranje.
Examples
Izvadite ulaz u zip arhiv sa lozinkom.
using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
using (Archive archive = new Archive(zipFile))
{
archive.Entries[0].Extract(httpResponseStream, "p@s$");
}
}
Exceptions
CRC ili MAC verifikacija nije uspjela za ulazak.
Izvor je korumpiran ili nije čitljiv.
destination’ does not support writing.
Open(String)
Otvara ulaz za ekstrakciju i pruža protok s dekomprimiranim sadržajem ulaza.
public Stream Open(string password = null)
Parameters
password
string
Opcionalna lozinka za dešifriranje.
Returns
Proljev koji predstavlja sadržaj ulaza.
Examples
Korištenje :Stream decompressed = entry.Open();
.NET 4.0 i viši - koristite metodu Stream.CopyTo:decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 i ranije - kopirajte bajte ručno:
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
Vrsta događaja
EventHandler < ProgressEventArgs >
Examples
archive.Entries[0].CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
Remarks
Poslanik događaja je primjer Aspose.Zip.ArchiveEntry.
ExtractionProgressed
Povećava se kada se porcija sirovog toka izvlači.
public event EventHandler<progresseventargs> ExtractionProgressed
Vrsta događaja
EventHandler < ProgressEventArgs >
Examples
archive.Entries[0].ExtractionProgressed += (s, e) => { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };
Remarks
Poslanik događaja je primjer Aspose.Zip.ArchiveEntry.