Class RarArchiveEntry

Class RarArchiveEntry

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

نماینده یک فایل واحد درون آرشیو است.

public abstract class RarArchiveEntry : IArchiveFileEntry

وراثت

objectRarArchiveEntry

مشتق شده

RarArchiveEntryEncrypted, RarArchiveEntryPlain

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

IArchiveFileEntry

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

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

توضیحات

یک نمونه از Aspose.Zip.Rar.RarArchiveEntry را به Aspose.Zip.Rar.RarArchiveEntryEncrypted تبدیل کنید تا تعیین کنید که آیا ورودی رمزگذاری شده است یا خیر.

ویژگی‌ها

CompressedSize

اندازه فایل فشرده را دریافت می‌کند.

public ulong CompressedSize { get; }

مقدار ویژگی

ulong

CreationTime

تاریخ و زمان ایجاد را دریافت می‌کند.

public DateTime CreationTime { get; }

مقدار ویژگی

DateTime

IsDirectory

یک مقدار را دریافت می‌کند که نشان می‌دهد آیا ورودی نمایانگر دایرکتوری است یا خیر.

public bool IsDirectory { get; }

مقدار ویژگی

bool

LastAccessTime

تاریخ و زمان آخرین دسترسی را دریافت می‌کند.

public DateTime LastAccessTime { get; }

مقدار ویژگی

DateTime

ModificationTime

تاریخ و زمان آخرین تغییر را دریافت می‌کند.

public DateTime ModificationTime { get; }

مقدار ویژگی

DateTime

Name

نام ورودی درون آرشیو را دریافت می‌کند.

public string Name { get; }

مقدار ویژگی

string

Source

جریان منبع داده برای ورودی را دریافت می‌کند.

protected Stream Source { get; set; }

مقدار ویژگی

Stream

UncompressedSize

اندازه فایل اصلی را دریافت می‌کند.

public ulong UncompressedSize { get; }

مقدار ویژگی

ulong

متدها

Extract(string, string)

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

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

پارامترها

path string

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

password string

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

بازگشت

FileInfo

اطلاعات فایل از فایل ترکیبی.

مثال‌ها

دو ورودی از آرشیو rar را استخراج کنید.

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

استثناها

ArgumentNullException

path نال است.

SecurityException

تماس گیرنده اجازه لازم برای دسترسی را ندارد.

ArgumentException

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

UnauthorizedAccessException

دسترسی به فایل path رد شده است.

PathTooLongException

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

NotSupportedException

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

FileNotFoundException

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

DirectoryNotFoundException

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

IOException

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

InvalidDataException

داده خراب است. -یا- تأیید CRC یا MAC برای ورودی شکست خورده است.

Extract(Stream, string)

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

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

پارامترها

destination Stream

جریان مقصد. باید قابل نوشتن باشد.

password string

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

مثال‌ها

یک ورودی از آرشیو rar با رمز عبور استخراج کنید.

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

استثناها

InvalidDataException

تأیید CRC یا MAC برای ورودی شکست خورده است.

ArgumentException

destination از نوشتن پشتیبانی نمی‌کند.

InvalidDataException

داده خراب است. -یا- تأیید CRC یا MAC برای ورودی شکست خورده است.

Open(string)

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

public Stream Open(string password = null)

پارامترها

password string

رمز عبور اختیاری برای رمزگشایی. همچنین می‌تواند در Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword تنظیم شود.

بازگشت

Stream

جریانی که محتوای ورودی را نمایان می‌کند.

مثال‌ها

استفاده: Stream decompressed = entry.Open();

.NET 4.0 و بالاتر - از متد Stream.CopyTo استفاده کنید: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 و قبل - بایت‌ها را به صورت دستی کپی کنید:

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

#### توضیحات

<p>از جریان بخوانید تا محتوای اصلی فایل را دریافت کنید. به بخش مثال‌ها مراجعه کنید.</p>

### <a id="Aspose_Zip_Rar_RarArchiveEntry_ExtractionProgressed"></a> ExtractionProgressed

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

```csharp
public event EventHandler<progresseventargs> ExtractionProgressed

نوع رویداد

EventHandler<ProgressEventArgs&gt;

مثال‌ها

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

توضیحات

فرستنده رویداد یک نمونه از Aspose.Zip.Rar.RarArchiveEntry است.

 فارسی