Как разархивировать rar с помощью языка c#

Как разархивировать rar файл?

Из этой небольшой заметки вы узнаете, как разархивировать rar файл с помощью языка c#.

И так, предположим, что у нас есть архив, например c:\backup\20130512.rar, в котором содержится папка documents с тремя файлами: 1.txt, 2.txt и 3.txt.

архив winrar

И в качестве задачи нам требуется разархивировать данный архив программным путём, что для этого нужно сделать?

1. Для начала нужно проверить, чтобы на вашем компьютере была установлена программа (rar.exe), которая обычно расположена в папке c:\Program Files\WinRAR. Если по указано пути её нет, то тогда воспользуйтесь поиском.

2. Чтобы разархивировать файл rar необходимо запустить выше указанную программу, передав её несколько параметров: команду, полный путь к файлу с архивом и если требуется, то так же указать путь, куда нужно распаковать файлы.

3. Извлечение файлов из архива выполняется с помощью команды «e», например:

rar e c:\backup\20130512.rar c:\backup

результат

разархивированные файлы

Если же вам нужно извлечь не только файлы, но и папку, в которой они хранятся, то в таком случае вместо команды (e) указываем команду (x) и получаем следующий результат:

извлеченные файлы

4. Осталось выполнить последний шаг, в котором мы, с помощью класса ProcessStartInfo, запустим программу (rar.exe) и выполним команду.

using System.Diagnostics; //добавить
try
{
ProcessStartInfo ps = new ProcessStartInfo();
//Имя запускаемого приложения
ps.FileName = @"C:\Program Files\WinRAR\RAR.exe";
//команда
ps.Arguments = @"e c:\backup\20130512.rar c:\backup";
Process.Start(ps);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}

На этом всё, если есть какие-то вопросы, то оставляйте их в комментариях.

Читайте также:

2 комментария

  1. Немного можно дополнить.

    Process procCommand = Process.Start(ps);
    procCommand.WaitForExit();

    Чтобы дать дождаться завершения процесса.

  2. Почему может возникать ошибка «Архивы не найдены». Вручную архив распаковывается без проблем

Добавить комментарий для Son Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *