Розпакування архівів RAR у .NET
Огляд
Aspose.ZIP API дозволяє видобувати архіви у ваших програмах без необхідності будь-яких інших програм сторонніх розробників. Aspose.ZIP API надає клас RarArchive для роботи з архівами RAR. API надає клас RarArchiveEntry для представлення одного файлу в архіві RAR.
Створення RAR-архівів неможливе.
Витягти запис
Наведений нижче приклад коду демонструє, як видобути запис за допомогою екземпляра RarArchive.
Кроки: витягніть запис із архіву RAR за допомогою C#
- Відкрийте RAR-архів за допомогою примірника RarArchive.
- Створіть новий потік файлів для видобутого запису.
- Використовуйте метод Open для першого запису, щоб отримати його вміст.
- Використовуйте буфер для читання даних із запису та запису їх у потік файлу призначення, доки не буде передано всі байти.
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#
- записати зашифрований архів RAR за допомогою об’єкта FileInfo.
- Створіть потік файлів для видобутого запису.
- Використовуйте метод Extract для першого запису, вказавши пароль, необхідний для його розшифровки.
- Запишіть розшифровані дані у файл призначення.
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#
- Відкрийте RAR-архів за допомогою екземпляра RarArchive.
- Використовуйте метод ExtractToDirectory, щоб розпакувати всі файли з архіву до вказаного каталогу.
1 using (RarArchive archive = new RarArchive("archive.rar"))
2 {
3 archive.ExtractToDirectory("extracted");
4 }