Skip to content

adoconnection/SevenZipExtractor

Repository files navigation

SevenZipExtractor

C# wrapper for 7z.dll (x86 and x64 included)

  • .NET Standard 2.0
  • .NET Framework 4.5

NuGet NuGet

Every single star makes maintainer happy! ⭐

NuGet

Install-Package SevenZipExtractor

Supported formats:

  • 7Zip
  • APM
  • Arj
  • BZip2
  • Cab
  • Chm
  • Compound
  • Cpio
  • CramFS
  • Deb
  • Dll
  • Dmg
  • Exe
  • Fat
  • Flv
  • GZip
  • Hfs
  • Iso
  • Lzh
  • Lzma
  • Lzma86
  • Mach-O
  • Mbr
  • Mub
  • Nsis
  • Ntfs
  • Ppmd
  • Rar
  • Rar5
  • Rpm
  • Split
  • SquashFS
  • Swf
  • Swfc
  • Tar
  • TE
  • Udf
  • UEFIc
  • UEFIs
  • Vhd (?)
  • Wim
  • Xar
  • XZ
  • Z
  • Zip

Examples

Extract all

using (ArchiveFile archiveFile = new ArchiveFile(@"Archive.ARJ"))
{
    archiveFile.Extract("Output"); // extract all
}

Extract password proceted archive, owerwrite files

using (ArchiveFile archiveFile = new ArchiveFile(@"Archive.ARJ"))
{
    archiveFile.Extract("Output", overwrite: true, password: "mySecret");
}

Extract to file or stream

using (ArchiveFile archiveFile = new ArchiveFile(@"Archive.ARJ"))
{
    foreach (Entry entry in archiveFile.Entries)
    {
        Console.WriteLine(entry.FileName);
        
        // extract to file
        entry.Extract(entry.FileName);
        
        // extract to stream
        MemoryStream memoryStream = new MemoryStream();
        entry.Extract(memoryStream);
    }
}

Guess archive format from files without extensions

using (ArchiveFile archiveFile = new ArchiveFile(@"c:\random-archive"))
{
    archiveFile.Extract("Output"); 
}

Guess archive format from streams

WebRequest request = WebRequest.Create ("http://www.contoso.com/file.aspx?id=12345");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

using (ArchiveFile archiveFile = new ArchiveFile(response.GetResponseStream())
{
    archiveFile.Extract("Output"); 
}

Wiki

7z.dll

7z.dll (x86 and x64) will be added to your BIN folder automatically.

License

Changelog

1.0.19 / 2024.12.18

  • Password property for archive.Extract method

1.0.18 / 2024.12.18

1.0.17 / 2022.04.08

  • #54 4Gb+ archives fixed! 🎉 (Thanks Pyroluk)

1.0.16 / 2021.01.17

  • 7z binaries updated to 21.07.0.0
  • PR#56 - signature for SquashFS (Thanks mmoosstt)
  • PR#53 - look for binaries in bin folder (Thanks CupSunshine)

1.0.15 / 2020.01.14

  • .NETStandard 2.0 support PR#38

1.0.14

  • Entry.Extrat - preserveTimestamp is true by default #34
  • Dynamic operations can only be performed in homogenous AppDomain" #36
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy