Class RarArchive

Class RarArchive

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

این کلاس نمایانگر فایل آرشیو RAR است. از آن برای استخراج آرشیوهای RAR استفاده کنید.

public class RarArchive : IArchive, IDisposable

وراثت

objectRarArchive

پیاده‌سازی‌ها

IArchive, IDisposable

اعضای وراثت‌یافته

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

سازنده‌ها

RarArchive(string, RarArchiveLoadOptions)

یک نمونه جدید از کلاس Aspose.Zip.Rar.RarArchive را مقداردهی اولیه می‌کند و لیست ورودی‌هایی که می‌توان از آرشیو استخراج کرد را تشکیل می‌دهد.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)

پارامترها

path string

مسیر کامل یا مسیر نسبی به فایل آرشیو.

loadOptions RarArchiveLoadOptions

گزینه‌هایی برای بارگذاری آرشیو موجود.

مثال‌ها

مثال زیر یک آرشیو را استخراج می‌کند و سپس اولین ورودی را به یک MemoryStream فشرده‌سازی می‌کند.

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

توضیحات

این سازنده هیچ ورودی‌ای را فشرده‌سازی نمی‌کند. برای فشرده‌سازی، به متد Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) مراجعه کنید.

استثناها

ArgumentNullException

path نال است.

SecurityException

فراخوانی‌کننده مجوز لازم برای دسترسی را ندارد.

ArgumentException

path خالی است، فقط شامل فضاهای خالی است، یا شامل کاراکترهای نامعتبر است.

UnauthorizedAccessException

دسترسی به فایل path ممنوع است.

PathTooLongException

path، نام فایل، یا هر دو از طول حداکثر تعریف‌شده توسط سیستم فراتر می‌روند. به عنوان مثال، در پلتفرم‌های مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایل‌ها باید کمتر از 260 کاراکتر باشند.

NotSupportedException

فایل در path شامل یک دو نقطه (:) در وسط رشته است.

FileNotFoundException

فایل پیدا نشد.

DirectoryNotFoundException

مسیر مشخص‌شده نامعتبر است، مانند اینکه در یک درایو غیرنقشه‌برداری باشد.

IOException

فایل در حال حاضر باز است.

RarArchive(Stream, RarArchiveLoadOptions)

یک نمونه جدید از کلاس Aspose.Zip.Rar.RarArchive را مقداردهی اولیه می‌کند و لیست ورودی‌هایی که می‌توان از آرشیو استخراج کرد را تشکیل می‌دهد.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)

پارامترها

sourceStream Stream

منبع آرشیو.

loadOptions RarArchiveLoadOptions

گزینه‌هایی برای بارگذاری آرشیو موجود.

مثال‌ها

مثال زیر اولین ورودی را رمزگشایی و فشرده‌سازی می‌کند و به یک MemoryStream منتقل می‌کند.

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

توضیحات

این سازنده هیچ ورودی‌ای را فشرده‌سازی نمی‌کند. برای فشرده‌سازی، به متد Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) مراجعه کنید.

استثناها

ArgumentException

sourceStream قابل جستجو نیست.

InvalidDataException

امضای نادرست برای آرشیو. - یا - فایل یک آرشیو RAR نیست.

ویژگی‌ها

Entries

ورودی‌های نوع Aspose.Zip.Rar.RarArchiveEntry را که آرشیو rar را تشکیل می‌دهند، دریافت می‌کند.

public ReadOnlyCollection<rararchiveentry> Entries { get; }

مقدار ویژگی

ReadOnlyCollection<RarArchiveEntry&gt;

متدها

Dispose(bool)

وظایف تعریف‌شده توسط برنامه را که با آزادسازی، رهاسازی یا بازنشانی منابع غیرمدیریتی مرتبط است، انجام می‌دهد.

protected virtual void Dispose(bool disposing)

پارامترها

disposing bool

آیا منابع مدیریت‌شده باید رها شوند یا نه.

Dispose()

وظایف تعریف‌شده توسط برنامه را که با آزادسازی، رهاسازی یا بازنشانی منابع غیرمدیریتی مرتبط است، انجام می‌دهد.

public void Dispose()

ExtractToDirectory(string, string)

تمام فایل‌های موجود در آرشیو را به دایرکتوری ارائه‌شده استخراج می‌کند.

[Obsolete("برای استخراج آرشیو RAR رمزنگاری‌شده لطفاً رمز عبور را در سازنده با Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword ارائه دهید")]
public void ExtractToDirectory(string destinationDirectory, string password = null)

پارامترها

destinationDirectory string

مسیر دایرکتوری برای قرار دادن فایل‌های استخراج‌شده.

password string

رمز عبور اختیاری برای رمزگشایی.

مثال‌ها

using (var archive = new RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted", "$ecRet");
}

توضیحات

اگر دایرکتوری وجود نداشته باشد، ایجاد خواهد شد.

استثناها

ArgumentNullException

destinationDirectory نال است.

PathTooLongException

مسیر مشخص‌شده، نام فایل، یا هر دو از طول حداکثر تعریف‌شده توسط سیستم فراتر می‌روند. به عنوان مثال، در پلتفرم‌های مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایل‌ها باید کمتر از 260 کاراکتر باشند.

SecurityException

فراخوانی‌کننده مجوز لازم برای دسترسی به دایرکتوری موجود را ندارد.

NotSupportedException

اگر دایرکتوری وجود نداشته باشد، مسیر شامل یک کاراکتر دو نقطه (:) است که بخشی از برچسب درایو نیست (“C:") .

ArgumentException

destinationDirectory یک رشته با طول صفر، فقط شامل فضاهای خالی است، یا شامل یک یا چند کاراکتر نامعتبر است. می‌توانید برای یافتن کاراکترهای نامعتبر از متد System.IO.Path.GetInvalidPathChars استفاده کنید. - یا - مسیر با، یا فقط شامل، یک کاراکتر دو نقطه (:) است.

IOException

دایرکتوری مشخص‌شده توسط مسیر یک فایل است. - یا - نام شبکه شناخته‌شده نیست.

ExtractToDirectory(string)

تمام فایل‌های موجود در آرشیو را به دایرکتوری ارائه‌شده استخراج می‌کند.

public void ExtractToDirectory(string destinationDirectory)

پارامترها

destinationDirectory string

مسیر دایرکتوری برای قرار دادن فایل‌های استخراج‌شده.

مثال‌ها

using (var archive = new RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

توضیحات

اگر دایرکتوری وجود نداشته باشد، ایجاد خواهد شد.

استثناها

ArgumentNullException

destinationDirectory نال است.

PathTooLongException

مسیر مشخص‌شده، نام فایل، یا هر دو از طول حداکثر تعریف‌شده توسط سیستم فراتر می‌روند. به عنوان مثال، در پلتفرم‌های مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایل‌ها باید کمتر از 260 کاراکتر باشند.

SecurityException

فراخوانی‌کننده مجوز لازم برای دسترسی به دایرکتوری موجود را ندارد.

NotSupportedException

اگر دایرکتوری وجود نداشته باشد، مسیر شامل یک کاراکتر دو نقطه (:) است که بخشی از برچسب درایو نیست (“C:") .

ArgumentException

destinationDirectory یک رشته با طول صفر، فقط شامل فضاهای خالی است، یا شامل یک یا چند کاراکتر نامعتبر است. می‌توانید برای یافتن کاراکترهای نامعتبر از متد System.IO.Path.GetInvalidPathChars استفاده کنید. - یا - مسیر با، یا فقط شامل، یک کاراکتر دو نقطه (:) است.

IOException

دایرکتوری مشخص‌شده توسط مسیر یک فایل است. - یا - نام شبکه شناخته‌شده نیست.

 فارسی