Class RarArchiveEntry

Class RarArchiveEntry

Названий на: Aspose.Zip.Rar Асамблея: Aspose.Zip.dll (25.5.0)

З’єднує один файл в архіві.

public abstract class RarArchiveEntry : IArchiveFileEntry

Inheritance

object RarArchiveEntry

Derived

RarArchiveEntryEncrypted , RarArchiveEntryPlain

Implements

IArchiveFileEntry

Нападні члени

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

Remarks

Завантажити приклад Aspose.Zip.Rar.RarArchiveEntry в Aspose.Zip.Rar.RarArchiveEntryЗашифровано, щоб визначити, чи зашифрований вхід чи ні.

Properties

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

Methods

Extract(Стринг, Стринг)

Витягує вхід до файлової системи шляхом, що надається.

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

Parameters

path string

Якщо файл вже існує, він буде переписаний.

password string

Опціональний пароль для дешифрування.

Returns

FileInfo

Інформація про складений файл.

Examples

Витягніть два входи з рідкісного архіву.

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

ArgumentNullException

path’ is null.

SecurityException

Замовник не має необхідного дозволу на доступ.

ArgumentException

path’ є порожнім, містить тільки білі простори, або містить недійсні символи.

UnauthorizedAccessException

Доступ до файлу path" відмовляється.

PathTooLongException

Наприклад, на платформах, заснованих на Windows, шляхи повинні бути менше 248 символів, а імена файлів повинні бути менше 260 символів.

NotSupportedException

Файл в path’ містить колону (:) в середині смуги.

FileNotFoundException

Файл не знайдено.

DirectoryNotFoundException

Визначений шлях недійсний, наприклад, перебування на безкартованому двигуні.

IOException

Файл вже відкритий.

InvalidDataException

Дані пошкоджені. -або- CRC або MAC перевірка провалилася для входу.

Extract(Стрий, Стрий)

Витягує вхід до наданого потоку.

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

Parameters

destination Stream

Достовірний маршрут - має бути написані.

password string

Опціональний пароль для дешифрування.

Examples

Введіть вхід рідкісного архіву з паролем.

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

Exceptions

InvalidDataException

CRC або MAC перевірка провалилася для входу.

ArgumentException

destination’ does not support writing.

InvalidDataException

Дані пошкоджені. -або- CRC або MAC перевірка провалилася для входу.

Open(стрічка)

Відкриває вхід для екстракції і забезпечує потік з декомпресованим вмістом входу.

public Stream Open(string password = null)

Parameters

password string

Він також може бути встановлений в Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword.

Returns

Stream

Потік, що представляє зміст входу.

Examples

Використання :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>

#### 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

Тип події

EventHandler • < ProgressEventArgs >

Examples

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

Remarks

Відправник подій є прикладом Aspose.Zip.Rar.RarArchiveEntry.

 Українська