Розпакування архівів RAR у .NET

Огляд

Aspose.ZIP API дозволяє видобувати архіви у ваших програмах без необхідності будь-яких інших програм сторонніх розробників.  Aspose.ZIP API надає клас RarArchive для роботи з архівами RAR.  API надає клас RarArchiveEntry для представлення одного файлу в архіві RAR.

Створення RAR-архівів неможливе.

Витягти запис

Наведений нижче приклад коду демонструє, як видобути запис за допомогою екземпляра RarArchive.

Кроки: витягніть запис із архіву RAR за допомогою C#

  1. Відкрийте RAR-архів за допомогою примірника RarArchive.
  2. Створіть новий потік файлів для видобутого запису.
  3. Використовуйте метод Open для першого запису, щоб отримати його вміст.
  4. Використовуйте буфер для читання даних із запису та запису їх у потік файлу призначення, доки не буде передано всі байти.
 1    using (RarArchive archive = new RarArchive("archive.rar"))
 2    {
 3        using (var destination = File.Create(dataDir + "firstEntry.txt"))
 4        {
 5                using (var source = archive.Entries[0].Open())
 6                {
 7                    byte[] buffer = new byte[1024];
 8                    int bytesRead;
 9                    while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)                       
10                        destination.Write(buffer, 0, bytesRead);
11                            
12                }                    
13        }
14    }

Витягніть зашифрований запис

У наступному прикладі коду показано, як отримати зашифрований запис за допомогою екземпляра RarArchive.

Кроки: Розпакуйте зашифрований запис із архіву RAR через C#

  1. записати зашифрований архів RAR за допомогою об’єкта FileInfo.
  2. Створіть потік файлів для видобутого запису.
  3. Використовуйте метод Extract для першого запису, вказавши пароль, необхідний для його розшифровки.
  4. Запишіть розшифровані дані у файл призначення.
1    FileInfo fi = new FileInfo("encrypted.rar");
2    using (RarArchive archive = new RarArchive(fi.OpenRead()))
3    {
4        using (var destination = File.Create(dataDir + "firstEntry.txt"))
5        {
6            archive.Entries[0].Extract(destination, "p@s$w0rd");                
7        }
8    }

Витягування стисненого каталогу

У наступному прикладі коду показано, як отримати всі файли з примірника RarArchive.

Кроки: витягніть усі файли з Стиснений каталог (архів RAR) через C#

  1. Відкрийте RAR-архів за допомогою екземпляра RarArchive.
  2. Використовуйте метод ExtractToDirectory, щоб розпакувати всі файли з архіву до вказаного каталогу.
1    using (RarArchive archive = new RarArchive("archive.rar"))
2    {
3        archive.ExtractToDirectory("extracted");
4    }
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.