Class ArchiveEntry

Class ArchiveEntry

nazivni prostor: Aspose.Zip Sastav: Aspose.Zip.dll (25.5.0)

Predstavlja jedinstvenu datoteku unutar arhiva.

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted , ArchiveEntryPlain

Implements

IArchiveFileEntry

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

string

CompressedSize

Dobiva veličinu komprimiranog datoteke.

public ulong CompressedSize { get; }

Vrijednost nekretnina

ulong

CompressionSettings

Dobiva postavke za kompresije ili dekompresije.

public CompressionSettings CompressionSettings { get; }

Vrijednost nekretnina

CompressionSettings

DataSource

Izvor za ulazak ako je ulaz dodan arhivu, nije izvučen.

public Stream DataSource { get; }

Vrijednost nekretnina

Stream

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

FileAttributes

IsDirectory

Dobiva vrijednost koja ukazuje na to da li ulaz predstavlja direktoriju.

public bool IsDirectory { get; }

Vrijednost nekretnina

bool

ModificationTime

Pronađite ili postavite posljednji izmijenjen datum i vrijeme.

public DateTime ModificationTime { get; set; }

Vrijednost nekretnina

DateTime

Name

Dobivaju ime ulaza u arhivu.

public string Name { get; protected set; }

Vrijednost nekretnina

string

UncompressedSize

Dobiva veličinu izvorne datoteke.

public ulong UncompressedSize { get; }

Vrijednost nekretnina

ulong

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

FileInfo

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

ArgumentNullException

path’ is null.

SecurityException

Pozivač nema potrebnu dozvolu za pristup.

ArgumentException

path’ je prazan, sadrži samo bijele prostore, ili sadrži nevažeće znakove.

UnauthorizedAccessException

Pristup datoteci path" je odbijen.

PathTooLongException

Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.

NotSupportedException

File na path’ sadrži kolona (:) u sredini trake.

FileNotFoundException

Dosje nije pronađeno.

DirectoryNotFoundException

Navedeni put je nevažeći, na primjer, biti na nemapiranom pogonu.

IOException

Dosje je već otvoreno.

InvalidDataException

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

InvalidDataException

CRC ili MAC verifikacija nije uspjela za ulazak.

IOException

Izvor je korumpiran ili nije čitljiv.

ArgumentException

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

Stream

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 &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

Vrsta događaja

EventHandler < ProgressEventArgs >

Examples

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { 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) =&gt; { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };

Remarks

Poslanik događaja je primjer Aspose.Zip.ArchiveEntry.

 Hrvatski