Class RarArchive
Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)
Bu sınıf RAR arşiv dosyasını temsil eder. RAR arşivlerini çıkarmak için kullanın.
public class RarArchive : IArchive, IDisposable
Miras
Uygulamalar
Miras Alınan Üyeler
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Yapıcılar
RarArchive(string, RarArchiveLoadOptions)
Aspose.Zip.Rar.RarArchive sınıfının yeni bir örneğini başlatır ve arşivden çıkarılabilecek girişler listesini oluşturur.
public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
Parametreler
path
string
Arşiv dosyasının tam nitelikli veya göreceli yolu.
loadOptions
RarArchiveLoadOptions
Mevcut arşivi yüklemek için kullanılacak seçenekler.
Örnekler
Aşağıdaki örnek bir arşivi çıkarır, ardından ilk girişi bir MemoryStream
içine açar.
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive("data.rar"))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
Açıklamalar
Bu yapıcı herhangi bir girişi açmaz. Açma işlemi için Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) yöntemine bakın.
İstisnalar
path
null.
Arayanın erişim için gerekli izni yok.
path
boş, yalnızca boşluk içeriyor veya geçersiz karakterler içeriyor.
path
dosyasına erişim reddedildi.
Belirtilen path
, dosya adı veya her ikisi 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.
path
içinde bir iki nokta üst üste (:) bulunuyor.
Dosya bulunamadı.
Belirtilen yol geçersiz, örneğin haritalanmamış bir sürücüde.
Dosya zaten açık.
RarArchive(Stream, RarArchiveLoadOptions)
Aspose.Zip.Rar.RarArchive sınıfının yeni bir örneğini başlatır ve arşivden çıkarılabilecek girişler listesini oluşturur.
public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
Parametreler
sourceStream
Stream
Arşivin kaynağı.
loadOptions
RarArchiveLoadOptions
Mevcut arşivi yüklemek için kullanılacak seçenekler.
Örnekler
Aşağıdaki örnek ilk girişi bir MemoryStream
içine şifre çözer ve açar.
var fs = File.OpenRead("encrypted.rar");
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive(fs, new RarArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
Açıklamalar
Bu yapıcı herhangi bir girişi açmaz. Açma işlemi için Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) yöntemine bakın.
İstisnalar
sourceStream
arama yapılabilir değil.
Arşiv için yanlış imza. - veya - Dosya bir RAR arşivi değil.
Özellikler
Entries
RAR arşivini oluşturan Aspose.Zip.Rar.RarArchiveEntry türündeki girişleri alır.
public ReadOnlyCollection<rararchiveentry> Entries { get; }
Özellik Değeri
ReadOnlyCollection<RarArchiveEntry>
Yöntemler
Dispose(bool)
Yönetilmeyen kaynakların serbest bırakılması, salınması veya sıfırlanması ile ilgili uygulama tanımlı görevleri yerine getirir.
protected virtual void Dispose(bool disposing)
Parametreler
disposing
bool
Yönetilen kaynakların serbest bırakılıp bırakılmayacağı.
Dispose()
Yönetilmeyen kaynakların serbest bırakılması, salınması veya sıfırlanması ile ilgili uygulama tanımlı görevleri yerine getirir.
public void Dispose()
ExtractToDirectory(string, string)
Arşivdeki tüm dosyaları sağlanan dizine çıkarır.
[Obsolete("Şifreli RAR arşivini çıkarmak için lütfen yapıcıda Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword ile şifreyi sağlayın.")]
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parametreler
destinationDirectory
string
Çıkarılan dosyaların yerleştirileceği dizinin yolu.
password
string
Şifre çözme için isteğe bağlı şifre.
Örnekler
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted", "$ecRet");
}
Açıklamalar
Dizin mevcut değilse, oluşturulacaktır.
İstisnalar
destinationDirectory
null.
Belirtilen yol, dosya adı veya her ikisi 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.
Arayanın mevcut dizine erişim için gerekli izni yok.
Dizin mevcut değilse, yol bir sürücü etiketinin (“C:") parçası olmayan bir iki nokta üst üste (:) içeriyor.
destinationDirectory
sıfır uzunluğunda bir dize, yalnızca boşluk içeriyor veya bir veya daha fazla geçersiz karakter içeriyor. Geçersiz karakterleri sorgulamak için System.IO.Path.GetInvalidPathChars yöntemini kullanabilirsiniz. - veya - yol, yalnızca bir iki nokta üst üste (:) ile başlıyorsa veya içeriyorsa.
Belirtilen yol bir dosyadır. - veya - Ağ adı bilinmiyor.
ExtractToDirectory(string)
Arşivdeki tüm dosyaları sağlanan dizine çıkarır.
public void ExtractToDirectory(string destinationDirectory)
Parametreler
destinationDirectory
string
Çıkarılan dosyaların yerleştirileceği dizinin yolu.
Örnekler
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted");
}
Açıklamalar
Dizin mevcut değilse, oluşturulacaktır.
İstisnalar
destinationDirectory
null.
Belirtilen yol, dosya adı veya her ikisi 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.
Arayanın mevcut dizine erişim için gerekli izni yok.
Dizin mevcut değilse, yol bir sürücü etiketinin (“C:") parçası olmayan bir iki nokta üst üste (:) içeriyor.
destinationDirectory
sıfır uzunluğunda bir dize, yalnızca boşluk içeriyor veya bir veya daha fazla geçersiz karakter içeriyor. Geçersiz karakterleri sorgulamak için System.IO.Path.GetInvalidPathChars yöntemini kullanabilirsiniz. - veya - yol, yalnızca bir iki nokta üst üste (:) ile başlıyorsa veya içeriyorsa.
Belirtilen yol bir dosyadır. - veya - Ağ adı bilinmiyor.