Formát archivu RAR

V digitálním věku, kde jsou data králem a prvořadá je efektivita úložiště, zůstaly archivy RAR stálým a všudypřítomným řešením pro kompresi a organizaci souborů.

Informace o archivu RAR

Archivní formát RAR, zkratka pro ‘Roshal Archive’, je široce používaný a uznávaný kompresní formát určený ke zmenšení velikosti souborů a složek při zachování jejich integrity. RAR, vyvinutý Eugenem Roshalem, je známý svými vysokými kompresními poměry a podporou různých kompresních metod.

Archiv RAR Informace o historii formátu souboru

RAR vytvořil Eugene Roshal na začátku 90. let. Původně byl představen jako proprietární formát se zaměřením na efektivní kompresi a obnovu chyb. V průběhu let si RAR získal popularitu díky svým výjimečným kompresním schopnostem a robustním funkcím. Ačkoli RAR byl původně uzavřený zdroj, od té doby byl částečně otevřen a dekompresní algoritmy byly zpřístupněny veřejnosti. Od roku 2013 se verze 5 formátu stala výchozí možností. Komprese na starší verzi 4 je stále proveditelná pomocí moderního WinRAR.

Struktura archivu RAR

Archivy RAR jsou strukturovány jako kolekce komprimovaných souborů a složek. Obvykle se skládají ze série bloků, z nichž každý v archivu slouží specifickému účelu. Tyto bloky zahrnují data souborů, hlavičky a volitelné záznamy obnovy, které lze použít k opravě poškozených archivů. Velké archivy lze rozdělit na menší části nebo sloučit zpět dohromady. Lze vytvářet i samorozbalovací archivy.

Kompresní metody RAR

RAR má pouze jeden kompresní algoritmus. Formát podporuje silné šifrování AES pro obsah i názvy souborů. WinRAR umožňuje vytvářet „pevné“ archivy, které poskytují lepší kompresní poměry analýzou více souborů dohromady. Zastaralá verze RAR4 volitelně podporuje vyhrazenou kompresi pro text, zvuk a obrazová data.

Operace podporované archivem RAR

Aspose.ZIP umožňuje uživateli extrahovat buď konkrétní záznam, nebo celý archiv. Vytváření a úpravy RAR archivu nejsou podporovány. Aspose.ZIP je schopen extrahovat moderní RAR5 a starší verze RAR4 archivu.

RAR-file - Vnitřní struktura

Archivy RAR mají hierarchickou vnitřní strukturu obsahující záhlaví, komprimovaná data a volitelné záznamy obnovy. Struktura umožňuje efektivní extrakci konkrétních souborů bez dekomprimace celého archivu. Pokud je archiv zašifrován, obsahuje šifrovací hlavičku. Hlavní záhlaví obsahuje volitelný lokátor pro rychlý přístup k pozicím různých servisních bloků bez skenování celého archivu. Každý záznam má hlavičku souboru a služby. Tato záhlaví obsahují atributy souborů a metadata, včetně kontrolního součtu, systémových časů, názvu a podobných podrobností.

RAR-file - Vnitřní struktura

Popularita archivu a podpory RAR

Archivy RAR jsou široce používány pro kompresi a sdílení souborů díky jejich vynikajícím kompresním poměrům a všestrannosti. Jsou oblíbené v ekosystémech Windows i macOS a těší se silné podpoře různých softwarových nástrojů. Zatímco RAR není zcela open source, mnoho aplikací a knihoven třetích stran poskytuje podporu pro vytváření, extrahování a správu archivů RAR na různých platformách.

Příklady použití RAR

Aspose.ZIP API umožňuje extrahovat archivy ve vašich aplikacích bez potřeby dalších aplikací třetích stran. Aspose.ZIP API poskytuje třídu RarArchive pro práci s archivy RAR. PI poskytuje třídu RarArchiveEntry, která představuje jeden soubor v archivu 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");
    }

Další informace o Zip-archivech

Lidé se ptali

1. Je RAR efektivnější než ZIP?

Zda je RAR efektivnější než ZIP , závisí na konkrétním případu použití a typu komprimovaných dat. RAR i ZIP jsou oblíbené archivní formáty, ale mají určité rozdíly, pokud jde o účinnost komprese, funkce a kompatibilitu.

2. Jaký algoritmus používá WinRAR?

WinRAR primárně používá AES-256 Bit Encryption Technology, což je proprietární kompresní algoritmus vyvinutý Eugenem Roshalem, tvůrcem WinRAR. Algoritmus RAR je známý svými vysokými kompresními poměry, což může vést k menším archivním souborům ve srovnání s některými jinými kompresními algoritmy.

3. Jsou všechny soubory RAR bezpečné?

Samotné soubory RAR jsou obvykle bezpečné, protože se jedná pouze o archivní kontejnery, které mohou obsahovat různé typy dat, podobně jako soubory ZIP . Bezpečnost souboru RAR však závisí na obsahu, který obsahuje, a na jeho zdroji.