Как конвертировать RAR в ZIP с помощью C#
Сначала вам необходимо получить библиотеку Aspose.Zip и использовать ее в своем проекте C#. Обычно его можно загрузить с веб-сайта Aspose или использовать пакет NuGet, если он доступен. Менеджер пакетов, найдите Aspose.ZIP и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.
Управляйте пакетами NuGet с помощью пакета Visual Studio.
Консольная команда диспетчера пакетов:
PM> Install-Package Aspose.Zip
Действия по преобразованию RAR в ZIP через C#
Convertation from RAR to ZIP consist of following steps:
- Extract archive to intermediate storage
- Compress extracted data to desired format
Системные Требования
Before running the conversion example code, make sure that you have the following prerequisites.
- Microsoft Windows or a compatible OS with .NET Framework, Mono and COM Interop.
- Development environment like Microsoft Visual Studio.
- Aspose.Tasks for .NET DLL referenced in your project.
Пример кода для преобразования из RAR в ZIP
Преобразование архивов RAR в формат ZIP — полезный процесс, который позволяет пользователям переходить от одного популярного формата сжатия к другому. Архивы RAR, известные своим эффективным сжатием и широким распространением, можно легко преобразовать в ZIP-архивы с помощью инструментов, подобных тем, которые предоставляет Aspose.Zip для .NET.
Во время преобразования исходная структура файла и данные тщательно сохраняются, гарантируя, что содержимое останется нетронутым и доступным. С другой стороны, ZIP-архивы предпочитаются из-за их открытого исходного кода, мощных возможностей сжатия и поддержки различных алгоритмов сжатия.
После завершения преобразования в ZIP полученный архив становится совместимым с широким спектром платформ, и к нему можно легко предоставлять общий доступ. Это преобразование упрощает переход между форматами сжатия, максимизирует эффективность сжатия и гарантирует безопасность и адаптируемость данных в формате ZIP. Это оказывается ценным для пользователей, которым необходимо переключаться на формат ZIP или распространять его, сохраняя при этом целостность данных.
Код из RAR в различные форматы. Архив RAR обычно содержит несколько записей или файлов. Чтобы преобразовать этот архив в такие форматы, как GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) и BZ2 (Bzip2), общий подход состоит в том, чтобы сначала упаковать содержимое в TAR (Tape). Архивный) формат. Этот процесс напоминает типичную практику в средах Linux.
В этом процессе преобразования каждый файл или запись в архиве RAR сначала объединяется в один архив TAR. Этот архив TAR служит контейнером для отдельных файлов, сохраняя их исходную структуру и метаданные. Как только данные инкапсулируются в архив TAR, становится проще применять различные алгоритмы и форматы сжатия.
Выбор TAR в качестве промежуточного формата обусловлен его простотой и широкой совместимостью с различными Unix-подобными операционными системами. Он обеспечивает простой способ группировки файлов без непосредственного применения сжатия. После завершения упаковки TAR к архиву TAR можно применить последующие операции сжатия для создания желаемых выходных форматов, таких как GZ, LZ, Z, XZ или BZ2.
Конвертировать из RAR в ZIP — C#:
using (Archive zip = new Archive())
{
using (RarArchive rar = new RarArchive(@"archive.rar"))
{
for (int i = 0; i < rar.Entries.Count; i++)
{
if (!rar.Entries[i].IsDirectory)
{
var ms = new MemoryStream();
rar.Entries[i].Extract(ms);
ms.Seek(0, SeekOrigin.Begin);
zip.CreateEntry(rar.Entries[i].Name, ms);
}
else
zip.CreateEntry(rar.Entries[i].Name + "/", Stream.Null);
}
}
zip.Save("output.zip");
}
Бесплатное приложение для конвертации ZIP в TAR.LZ
Ознакомьтесь с нашими интерактивными демонстрациями преобразования RAR в ZIP со следующими преимуществами:
Надежная библиотека Aspose.ZIP, которая может сжимать, извлекать, шифровать, дешифровать, конвертировать и объединять архивы. Aspose.ZIP для .NET API позволяет манипулировать различными типами архивов, не вдаваясь в суть сложности форматов сжатия файлов с минимальными усилиями по кодированию.