Class RarArchiveEntry
İsim alanı : Aspose.Zip.Rar Toplama: Aspose.Zip.dll (25.5.0)
Arşiv içindeki tek dosyayı temsil eder.
public abstract class RarArchiveEntry : IArchiveFileEntry
Inheritance
Derived
RarArchiveEntryEncrypted , RarArchiveEntryPlain
Implements
mirasçı üyeleri
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Aspose.Zip.Rar.RarArchiveEntry örneğini Aspose.Zip.Rar.RarArchiveEntry’ye kaydırın, giriş şifrelenmiş olup olmadığını belirlemek için şifrelenmiştir.
Properties
CompressedSize
Bir kompres dosyasının büyüklüğünü alır.
public ulong CompressedSize { get; }
Mülkiyet Değer
CreationTime
Yaratılış tarihi ve zamanına sahiptir.
public DateTime CreationTime { get; }
Mülkiyet Değer
IsDirectory
Giriş bir dizin olup olmadığını gösteren bir değer alır.
public bool IsDirectory { get; }
Mülkiyet Değer
LastAccessTime
Son erişim tarihi ve saati alınır.
public DateTime LastAccessTime { get; }
Mülkiyet Değer
ModificationTime
En son değiştirilmiş tarih ve zaman alınır.
public DateTime ModificationTime { get; }
Mülkiyet Değer
Name
Arşiv içindeki giriş isimini alır.
public string Name { get; }
Mülkiyet Değer
Source
Giriş için veri kaynağı akışını alır.
protected Stream Source { get; set; }
Mülkiyet Değer
UncompressedSize
Orijinal bir dosya boyutunu alır.
public ulong UncompressedSize { get; }
Mülkiyet Değer
Methods
Extract(String ve String)
Dosya sistemine verilen yoldan giriş çıkarır.
public FileInfo Extract(string path, string password = null)
Parameters
path
string
Hedef dosyasına giden yol. eğer dosya zaten mevcutsa, aşırı yazılacaktır.
password
string
Şifreleme için seçmeli şifreleme.
Returns
Dosya Bilgileri Kompozit Dosyası.
Examples
RAR arşivinden iki giriş çıkarın.
using (FileStream rarFile = File.Open("archive.rar", FileMode.Open))
{
using (RarArchive archive = new RarArchive(rarFile))
{
archive.Entries[0].Extract("first.bin", "pass");
archive.Entries[1].Extract("second.bin", "pass");
}
}
Exceptions
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
path’daki dosya, satırın ortasında bir sütun (:) içerir.
Dosya bulunamadı.
Belirlenmiş yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması.
Dosya zaten açıktır.
CRC veya MAC doğrulama giriş için başarısız oldu.
Extract(akış, string)
Gönderilen akışın içeriğini çıkarır.
public void Extract(Stream destination, string password = null)
Parameters
destination
Stream
Destination stream. yazılabilir olması gerekir.
password
string
Şifreleme için seçmeli şifreleme.
Examples
Sıradan bir arşiv içeriği şifre ile çıkarın.
using (FileStream rarFile = File.Open("archive.zip", FileMode.Open))
{
using (RarArchive archive = new RarArchive(rarFile))
{
archive.Entries[0].Extract(httpResponseStream, "p@s$");
}
}
Exceptions
CRC veya MAC doğrulama giriş için başarısız oldu.
destination’ does not support writing.
CRC veya MAC doğrulama giriş için başarısız oldu.
Open(Sırt)
Ekstraksiyon için giriş açılır ve dekompres içeriği ile bir akış sağlar.
public Stream Open(string password = null)
Parameters
password
string
Ayrıca Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword içinde ayarlanabilir.
Returns
Giriş içeriğini temsil eden akım.
Examples
Kullanımı :Stream decompressed = entry.Open();
.NET 4.0 ve üstü - Stream.CopyTo yöntemi kullanın:decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 ve öncesi - byteyi 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>
#### Remarks
<p>Read from the stream to get the original content of a file. See examples section.</p>
### <a id="Aspose_Zip_Rar_RarArchiveEntry_ExtractionProgressed"></a> ExtractionProgressed
Raises when a portion of raw stream extracted.
```csharp
public event EventHandler<progresseventargs> ExtractionProgressed
Etkinlik Türü
EventHandler < için; ProgressEventArgs >
Examples
archive.Entries[0].ExtractionProgressed += (s, e) => { int percent = (int)((100 * e.ProceededBytes) / ((RarArchiveEntry)s).UncompressedSize); };
Remarks
Etkinlik göndericisi Aspose.Zip.Rar.RarArchiveEntry örneğidir.