Class ArchiveEntry

Class ArchiveEntry

Namespace: Aspose.Zip
Assembly: Aspose.Zip.dll (25.1.0)

Arşiv içindeki tek bir dosyayı temsil eder.

public abstract class ArchiveEntry : IArchiveFileEntry

Miras

objectArchiveEntry

Türetilmiş

ArchiveEntryEncrypted, ArchiveEntryPlain

Uygulamalar

IArchiveFileEntry

Miras Alınan Üyeler

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Açıklamalar

Aspose.Zip.ArchiveEntry örneğini Aspose.Zip.ArchiveEntryEncrypted’e dönüştürerek girişin şifreli olup olmadığını belirleyin.

Yapıcılar

ArchiveEntry(string, CompressionSettings, Func<stream>, FileAttributes)

Aspose.Zip.ArchiveEntry sınıfının yeni bir örneğini başlatır.

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

Parametreler

name string

Giriş adı.

compressionSettings CompressionSettings

Sıkıştırma veya açma ayarları.

sourceProvider Func<Stream&gt;

Sıkıştırılacak veya açılacak giriş verileriyle birlikte akış döndüren yöntem.

fileAttributes FileAttributes

Dosya sisteminden alınan nitelikler.

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

Aspose.Zip.ArchiveEntry sınıfının yeni bir örneğini başlatır.

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

Parametreler

name string

Giriş adı.

compressionSettings CompressionSettings

Sıkıştırma veya açma ayarları.

source Stream

Sıkıştırılacak veya açılacak giriş verileriyle birlikte akış.

fileAttributes FileAttributes

Dosya sisteminden alınan nitelikler.

fileInfo FileSystemInfo

Girişin dayandığı dosya veya klasör bilgisi.

Özellikler

Comment

Arşiv içindeki girişin yorumunu alır.

public string Comment { get; protected set; }

Özellik Değeri

string

CompressedSize

Sıkıştırılmış dosyanın boyutunu alır.

public ulong CompressedSize { get; }

Özellik Değeri

ulong

CompressionSettings

Sıkıştırma veya açma ayarlarını alır.

public CompressionSettings CompressionSettings { get; }

Özellik Değeri

CompressionSettings

DataSource

Giriş arşive eklendiğinde, çıkarılmadığında kaynak.

public Stream DataSource { get; }

Özellik Değeri

Stream

Açıklamalar

Atanmadan önce kaynak null’dır. Bu kaynak, bazı durumlarda Archive.Save yönteminde atanabilir.

FileAttributes

Ana sistemden dosya niteliklerini alır.

protected FileAttributes FileAttributes { get; }

Özellik Değeri

FileAttributes

IsDirectory

Girişin dizini temsil edip etmediğini belirten bir değer alır.

public bool IsDirectory { get; }

Özellik Değeri

bool

ModificationTime

Son değiştirilme tarihini ve saatini alır veya ayarlar.

public DateTime ModificationTime { get; set; }

Özellik Değeri

DateTime

Name

Arşiv içindeki girişin adını alır.

public string Name { get; protected set; }

Özellik Değeri

string

UncompressedSize

Orijinal dosyanın boyutunu alır.

public ulong UncompressedSize { get; }

Özellik Değeri

ulong

Yöntemler

Extract(string, string)

Girişi sağlanan yol ile dosya sistemine çıkarır.

public FileInfo Extract(string path, string password = null)

Parametreler

path string

Hedef dosya için yol. Eğer dosya zaten mevcutsa, üzerine yazılacaktır.

password string

Şifre çözme için isteğe bağlı şifre.

Döndürür

FileInfo

Oluşturulan dosyanın bilgileri.

Örnekler

Her biri kendi şifresiyle iki zip arşiv girişini çıkarın

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");
    }
}

İstisnalar

ArgumentNullException

path null’dur.

SecurityException

Arayanın erişim izni yoktur.

ArgumentException

path boş, yalnızca boşluk içeriyor veya geçersiz karakterler içeriyor.

UnauthorizedAccessException

path dosyasına erişim reddedildi.

PathTooLongException

Belirtilen path, dosya adı veya her ikisi de sistem tanımlı maksimum uzunluğu aşıyor. Örneğin, Windows tabanlı platformlarda yollar 248 karakterden kısa olmalı ve dosya adları 260 karakterden kısa olmalıdır.

NotSupportedException

path dosyası, dize içinde bir iki nokta üst üste (:) içeriyor.

FileNotFoundException

Dosya bulunamadı.

DirectoryNotFoundException

Belirtilen yol geçersizdir, örneğin haritalanmamış bir sürücüdür.

IOException

Dosya zaten açık.

InvalidDataException

Veri bozuldu. - veya - Giriş için CRC veya MAC doğrulaması başarısız oldu.

Extract(Stream, string)

Girişi sağlanan akışa çıkarır.

public void Extract(Stream destination, string password = null)

Parametreler

destination Stream

Hedef akış. Yazılabilir olmalıdır.

password string

Şifre çözme için isteğe bağlı şifre.

Örnekler

Şifre ile zip arşivinin bir girişini çıkarın.

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

İstisnalar

InvalidDataException

Veri bozuldu. - veya - Giriş için CRC veya MAC doğrulaması başarısız oldu.

IOException

Kaynak bozuldu veya okunamaz.

ArgumentException

destination yazmayı desteklemiyor.

Open(string)

Girişi çıkarma için açar ve sıkıştırılmamış giriş içeriği ile bir akış sağlar.

public Stream Open(string password = null)

Parametreler

password string

Şifre çözme için isteğe bağlı şifre.

Döndürür

Stream

Girişin içeriğini temsil eden akış.

Örnekler

Kullanım: Stream decompressed = entry.Open();

.NET 4.0 ve üzeri - Stream.CopyTo yöntemini kullanın: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 ve öncesi - baytları manuel olarak kopyalayın:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 &lt; (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Açıklamalar

<p>Akıştan okumak, dosyanın orijinal içeriğini elde etmek için gereklidir. Örnekler bölümüne bakın.</p>

#### İstisnalar

[InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)

Arşiv yanlış durumda.

### <a id="Aspose_Zip_ArchiveEntry_CompressionProgressed"></a> CompressionProgressed

Ham akışın bir kısmı sıkıştırıldığında tetiklenir.

```csharp
public event EventHandler<progresseventargs> CompressionProgressed

Olay Türü

EventHandler<ProgressEventArgs&gt;

Örnekler

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Açıklamalar

Olay göndericisi Aspose.Zip.ArchiveEntry örneğidir.

ExtractionProgressed

Ham akışın bir kısmı çıkarıldığında tetiklenir.

public event EventHandler<progresseventargs> ExtractionProgressed

Olay Türü

EventHandler<ProgressEventArgs&gt;

Örnekler

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

Açıklamalar

Olay göndericisi Aspose.Zip.ArchiveEntry örneğidir.

 Türkçe