Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

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

7z arşivindeki tek bir dosyayı temsil eder.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

Miras

objectSevenZipArchiveEntry

Türetilmiş

SevenZipArchiveEntryEncrypted, SevenZipArchiveEntryPlain

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.SevenZip.SevenZipArchiveEntry örneğini Aspose.Zip.SevenZip.SevenZipArchiveEntryEncrypted olarak dönüştürerek girişin şifreli olup olmadığını belirleyin.

Yapıcılar

SevenZipArchiveEntry(SevenZipArchive, string, SevenZipCompressionSettings, Stream, FileAttributes, FileSystemInfo)

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

protected SevenZipArchiveEntry(SevenZipArchive parent, string name, SevenZipCompressionSettings compressionSettings, Stream source, FileAttributes fileAttributes, FileSystemInfo fileInfo = null)

Parametreler

parent SevenZipArchive

name string

Giriş adı.

compressionSettings SevenZipCompressionSettings

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

source Stream

Sıkıştırılacak veya açılacak giriş verileri ile akış.

fileAttributes FileAttributes

Dosya sisteminden alınan öznitelikler.

fileInfo FileSystemInfo

Girişin temel alındığı dosya veya dizin bilgisi.

İstisnalar

ArgumentException

name null veya boştur.

Özellikler

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 SevenZipCompressionSettings CompressionSettings { get; }

Özellik Değeri

SevenZipCompressionSettings

FileAttributes

Ana sistemden dosya özniteliklerini 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şiklik tarih ve saatini alır.

public DateTime ModificationTime { get; }

Ö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

Source

Giriş için veri kaynağı akışını alır.

protected Stream Source { get; set; }

Özellik Değeri

Stream

UncompressedSize

Orijinal dosyanın boyutunu alır.

public ulong UncompressedSize { get; }

Özellik Değeri

ulong

Yöntemler

Extract(string, string)

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

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

Parametreler

path string

Hedef dosyanın yolu. Dosya zaten mevcutsa, üzerine yazılacaktır.

password string

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

Dönüşler

FileInfo

Oluşturulan dosyanın bilgileri.

Örnekler

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract("data.bin");
}

İstisnalar

ArgumentNullException

path null’dır.

SecurityException

Arayanın erişim için gerekli izni yoktur.

ArgumentException

path boştur, 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 daha kısa olmalı ve dosya adları 260 karakterden daha kısa olmalıdır.

NotSupportedException

path dosyası, dizgenin ortasında bir iki nokta üst üste (:) içeriyor.

InvalidDataException

Arşiv bozulmuş.

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ı parola.

Örnekler

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

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract(httpResponseStream);
}

İstisnalar

ArgumentException

destination yazmayı desteklemiyor.

InvalidOperationException

Arşiv çıkarma için açılmamıştır. - veya - Bu giriş bir dizindir.

InvalidDataException

Giriş içinde yanlış veri.

FinalizeCompressedData(Stream, byte[])

Sıkıştırılmış verileri takip eden başlıkları çıkış akışına yazın.

protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)

Parametreler

outputStream Stream

Giriş için çıkış akışı.

encoderProperties byte[]

Sıkıştırıcı özellikleri.

Dönüşler

int

Girişin önemli veri bloğundan sonra eklenen “teknik” baytların sayısı.

GetDestinationStream(Stream)

Giriş için hedef akış, süslenmiş olabilir.

protected abstract Stream GetDestinationStream(Stream outputStream)

Parametreler

outputStream Stream

Giriş için çıkış akışı.

Dönüşler

Stream

Giriş sıkıştırması için hedef akış.

Open(string)

Girişi çıkarma için açar ve 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ı parola.

Dönüşler

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 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Açıklamalar

Akıştan okuyarak dosyanın orijinal içeriğini alın. Örnekler bölümüne bakın.

#### İstisnalar

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

Arşiv çıkarma için açılmamıştır. - veya - Bu giriş bir dizindir.

 [InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)

Giriş içinde yanlış veri.

### <a id="Aspose_Zip_SevenZip_SevenZipArchiveEntry_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önderen, bir Aspose.Zip.SevenZip.SevenZipArchiveEntry örneğidir.

Çok iş parçacıklı modda LZMA2 girişleri için tetiklenmez.

 Türkçe