Format archiwum RAR

W erze cyfrowej, gdzie najważniejsze są dane i wydajność ich przechowywania, archiwa RAR pozostają niezawodnym i wszechobecnym rozwiązaniem do kompresji i porządkowania plików.

Informacje o archiwum RAR

Format archiwum RAR, skrót od „Roshal Archive”, to szeroko stosowany i dobrze oceniany format kompresji zaprojektowany w celu zmniejszenia rozmiaru plików i folderów przy jednoczesnym zachowaniu ich integralności. Opracowany przez Eugene’a Roshala, RAR jest znany z wysokich współczynników kompresji i obsługi różnych metod kompresji.

Archiwum RAR Format pliku Informacje o historii

RAR został stworzony przez Eugene’a Roshala na początku lat 90-tych. Początkowo został wprowadzony jako zastrzeżony format, skupiający się na wydajnej kompresji i odzyskiwaniu błędów. Z biegiem lat RAR zyskał popularność dzięki wyjątkowym możliwościom kompresji i solidnym funkcjom. Chociaż początkowo RAR miał zamknięte źródło, od tego czasu został częściowo otwarty, a algorytmy dekompresji zostały udostępnione publicznie. Od 2013 roku wersja 5 formatu stała się opcją domyślną. Kompresja do starszej wersji 4 jest nadal możliwa w nowoczesnym programie WinRAR.

Struktura archiwum RAR

Archiwa RAR mają strukturę kolekcji skompresowanych plików i folderów. Zwykle składają się z szeregu bloków, z których każdy służy określonemu celowi w archiwum. Bloki te obejmują dane plików, nagłówki i opcjonalne zapisy odzyskiwania, których można użyć do naprawy uszkodzonych archiwów. Duże archiwa można podzielić na mniejsze części lub ponownie połączyć. Można również tworzyć samorozpakowujące się archiwa.

Metody kompresji RAR

RAR ma tylko jeden algorytm kompresji. Format obsługuje silne szyfrowanie AES zarówno dla treści, jak i nazw plików. WinRAR umożliwia tworzenie „solidnych” archiwów zapewniających lepszy współczynnik kompresji poprzez wspólną analizę wielu plików. Przestarzała wersja RAR4 opcjonalnie obsługuje dedykowaną kompresję danych tekstowych, audio i graficznych.

Obsługiwane operacje w archiwum RAR

Aspose.ZIP umożliwia użytkownikowi wyodrębnienie konkretnego wpisu lub całego archiwum. Tworzenie i modyfikowanie archiwum RAR nie jest obsługiwane. Aspose.ZIP jest w stanie wyodrębnić nowoczesne wersje archiwum RAR5 i starsze wersje RAR4.

Plik RAR - Struktura wewnętrzna

Archiwa RAR mają hierarchiczną strukturę wewnętrzną obejmującą nagłówki, skompresowane dane i opcjonalne zapisy odzyskiwania. Struktura pozwala na sprawne wyodrębnienie określonych plików bez konieczności dekompresji całego archiwum. Jeśli archiwum jest tam zaszyfrowane, zawiera nagłówek szyfrujący. Nagłówek główny zawiera opcjonalny lokalizator umożliwiający szybki dostęp do pozycji różnych bloków usług bez konieczności skanowania całego archiwum. Każdy wpis ma nagłówek pliku i usługi. Nagłówki te zawierają atrybuty plików i metadane, w tym sumę kontrolną, czasy systemowe, nazwę i podobne szczegóły.

Plik RAR - Struktura wewnętrzna

Popularność archiwum i wsparcia RAR

Archiwa RAR są szeroko stosowane do kompresji i udostępniania plików ze względu na ich doskonałe współczynniki kompresji i wszechstronność. Są popularne zarówno w ekosystemach Windows, jak i macOS i cieszą się silnym wsparciem ze strony różnych narzędzi programowych. Chociaż RAR nie jest całkowicie otwartym kodem źródłowym, liczne aplikacje i biblioteki innych firm zapewniają obsługę tworzenia, rozpakowywania i zarządzania archiwami RAR na różnych platformach.

Przykłady użycia RAR

Aspose.ZIP API umożliwia wyodrębnianie archiwów z aplikacji bez potrzeby stosowania jakichkolwiek innych aplikacji innych firm. Aspose.ZIP API udostępnia klasę RarArchive do pracy z archiwami RAR. PI udostępnia klasę RarArchiveEntry, która reprezentuje pojedynczy plik w archiwum RAR.

Extract an RAR Entry

The following code example demonstrates how to extract an entry using RarArchive instance.

    using (RarArchive archive = new RarArchive("archive.rar")))
    {
        using (var destination = File.Create(dataDir + "firstEntry.txt"))
        {
                using (var source = archive.Entries[0].Open())
                {
                    byte[] buffer = new byte[1024];
                    int bytesRead;
                    while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)                       
                        destination.Write(buffer, 0, bytesRead);
                            
                }                    
        }
    }

Extract an Encrypted Entry

The following code example demonstrates how to extract an encrypted entry using RarArchive instance.

    FileInfo fi = new FileInfo("encrypted.rar");
    using (RarArchive archive = new RarArchive(fi.OpenRead()))
    {
        using (var destination = File.Create(dataDir + "firstEntry.txt"))
        {
            archive.Entries[0].Extract(destination, "p@s$w0rd");                
        }
    }

Extracting Compressed Directory

The following code example demonstrates how to all the files from RarArchive instance.

    using (RarArchive archive = new RarArchive("archive.rar")))
    {
        archive.ExtractToDirectory("extracted");
    }

Dodatkowe informacje o archiwach Zip

Ludzie pytali

1. Czy RAR jest bardziej wydajny niż ZIP?

To, czy RAR jest bardziej wydajny niż * ZIP zależy od konkretnego przypadku użycia i rodzaju kompresowanych danych. Zarówno RAR, jak i ZIP są popularnymi formatami archiwów, ale różnią się między sobą pod względem wydajności kompresji, funkcji i kompatybilności.

2. Z jakiego algorytmu korzysta WinRAR?

WinRAR wykorzystuje przede wszystkim technologię szyfrowania AES-256 Bit, która jest zastrzeżonym algorytmem kompresji opracowanym przez Eugene’a Roshala, twórcę WinRAR. Algorytm RAR znany jest z wysokich współczynników kompresji, co może skutkować mniejszymi plikami archiwalnymi w porównaniu z niektórymi innymi algorytmami kompresji.

3. Czy wszystkie pliki RAR są bezpieczne?

Same pliki RAR są zazwyczaj bezpieczne, ponieważ są po prostu kontenerami archiwalnymi, w których można przechowywać różne typy danych, podobnie jak pliki ZIP . Jednak bezpieczeństwo pliku RAR zależy od zawartej w nim zawartości i jego źródła.