Chapter 7 Supported Formats
Chapter 7 Supported Formats
7.1 Extraction formats
Common archive formats
| Format | Notes |
|---|---|
| ZIP | Deflate; AES-256; GBK filename fallback |
| RAR | RAR4 and RAR5; passwords, volumes, encrypted headers, comments |
| 7Z | LZMA2 and more; AES-256 (including encrypted headers) |
| TAR / TAR.GZ / TAR.BZ2 / TAR.XZ / TAR.ZST / TAR.LZ4 / TAR.Z | Streaming; symlinks recreated |
| GZ / BZ2 / XZ / ZST / LZMA | Single-file streams (result is the suffix-stripped file) |
| CAB | MSZIP / LZX |
| LZH | -lh0- / -lh1- / -lh5- / -lh6- / -lh7- |
| Z | LZW (compress) |
| UUE | Single-block uuencoding |
| CPIO | Streaming newc |
| Split .001 | Merged before extraction |
Installers and images
| Format | Notes |
|---|---|
| macOS PKG | XAR + cpio (in-house), gzip/bzip2/xz/lzma/raw |
| MSI | OLE database + embedded cab, mapped by File table order |
| DEB | ar container + data.tar.* |
| RPM | Header skip + payload sniffing + cpio newc |
| NSIS exe | zlib / lzma installers |
| PyInstaller exe | CArchive (an ELF on Linux) |
| SFX exe | zip / rar / 7z self-extractors |
| ISO | Joliet / Rock Ridge long names |
| WIM | .wim / .esd / .swm, XPRESS and LZX |
| CHM | ITS + LZX |
| Asar | Electron app packages |
7.2 Compression formats
ZIP / 7Z / TAR.GZ / TAR.BZ2 / TAR.XZ / TAR.ZST; compression levels and password encryption apply to ZIP and 7Z only (AES-256).
RAR compression is not available: the UnRAR license permits decompression only — a legal constraint, not a technical one.
7.3 Encryption support
| Scenario | ZIP | 7Z | RAR |
|---|---|---|---|
| Browsing an encrypted archive | Entry-level needs no password | Encrypted header needs password | Encrypted header needs password |
| Extraction | AES-256 | AES-256 | RAR’s own scheme |
| Wrong password | Retry dialog | Retry dialog | Retry dialog |
7.4 Filename encodings
Legacy ZIP stores file names in the local code page: a ZIP packed on Simplified-Chinese Windows shows mojibake elsewhere. When UTF-8 decoding fails, WxArc falls back to GBK and restores readable names.
7.5 Known limitations
- RAR compression (license-prohibited, never).
- ARJ is unsupported (no usable Rust implementation).
- InnoSetup / InstallShield EXE and DMG are unsupported.
- The NSIS bzip2 variant is unsupported (modified block header, rare).
- Single-file streams (GZ/BZ2/XZ/ZST) show “—” for the unpacked size.
- MSI v1 extracts flat (directory tree in a later iteration).
- Adding files to 7Z converts old entries to LZMA2.