SabreTools.Serialization 3.0.0

dotnet add package SabreTools.Serialization --version 3.0.0
                    
NuGet\Install-Package SabreTools.Serialization -Version 3.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SabreTools.Serialization" Version="3.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SabreTools.Serialization" Version="3.0.0" />
                    
Directory.Packages.props
<PackageReference Include="SabreTools.Serialization" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SabreTools.Serialization --version 3.0.0
                    
#r "nuget: SabreTools.Serialization, 3.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SabreTools.Serialization@3.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SabreTools.Serialization&version=3.0.0
                    
Install as a Cake Addin
#tool nuget:?package=SabreTools.Serialization&version=3.0.0
                    
Install as a Cake Tool

SabreTools.Serialization

Build and Test

This meta-library comprises of serializers that both read and write from files and streams to the dedicated models as well as convert to and from the common internal models. This library is partially used by the current parsing and writing code but none of the internal model serialization is used.

Find the link to the Nuget package here.

Releases

For the most recent stable build, download the latest release here: Releases Page

For the latest WIP build here: Rolling Release

InfoPrint

InfoPrint is a reference implementation for the deserialization and printing features of the library, packaged as a standalone executable for all supported platforms. It will attempt to detect and display information about many supported file types, optionally both hashing the file and outputting the information to a JSON file.

InfoPrint <options> file|directory ...

Options:
-?, -h, --help           Display this help text
-d, --debug              Enable debug mode
-c, --hash               Output file hashes
-f, --file               Print to file only
-j, --json               Print info as JSON
-r, --recursive          Recursively print info from embedded files

ExtractionTool

ExtractionTool is a reference implementation for the extraction features of the library, packaged as a standalone executable for all supported platforms. It will attempt to detect and extract many supported file types. See the table below for supported extraction functionality.

ExtractionTool <options> file|directory ...

Options:
-?, -h, --help           Display this help text
-d, --debug              Enable debug mode
-o, --outdir [PATH]      Set output path for extraction (required)
Format Name Notes
7-zip archive .NET Framework 4.6.2 and greater
Atari 7800 (A78) Cart Image Header and ROM data
Atari Lynx (LNX) Cart Image Header and ROM data
BFPK custom archive format
bzip2 archive .NET Framework 4.6.2 and greater
Compound File Binary (CFB) Only CFB common pieces extractable
fwNES FDS file Header and disk data
gzip archive
Half-Life Game Cache File (GCF)
Half-Life Level (BSP)
Half-Life Package File (PAK)
Half-Life Texture Package File (WAD3)
Half-Life 2 Level (VBSP)
InstallShield Archive V3 (Z)
InstallShield CAB
ISO9660 ISO and BIN files
Microsoft cabinet file Does not support LZX or Quantum compression
Microsoft LZ-compressed files KWAJ, QBasic, and SZDD variants
MoPaQ game data archive (MPQ) Windows only
New Exectuable Embedded archives and executables in the overlay and Wise installer
Nintendo Entertainment System (NES) Cart Image Header, Trainer data, PRG-ROM, CHR-ROM, Unheadered ROM, and PlayChoice-10 INST-ROM
NovaLogic Game Archive Format (PFF)
PKZIP and derived files (ZIP, etc.) .NET Framework 4.6.2 and greater
Portable Executable Embedded archives and executables in the resources and overlay, CExe-packed data, SFX archives (7-zip, PKZIP, and RAR), and Wise installer
Quantum archive (Q) Currently not working
RAR archive (RAR) .NET Framework 4.6.2 and greater
SGA game archive
Tape archive (TAR)
Valve Package File (VPK)
XBox Package File (XZP)
Xbox DVD Filesystem (XISO)
xz archive (XZ) .NET Framework 4.6.2 and greater
ZArchive

Namespaces

Below are a list of the included namespaces with links to their README files:

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net20 is compatible.  net35 is compatible.  net40 is compatible.  net403 was computed.  net45 was computed.  net451 was computed.  net452 is compatible.  net46 was computed.  net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 is compatible.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on SabreTools.Serialization:

Package Downloads
UnshieldSharp

Port of Unshield and unshieldv3 to C#

WiseUnpacker

Wise installer unpacker based on E_WISE and HWUN

BurnOutSharp

Protection scanning library

BinaryObjectScanner

Protection scanning library

SabreTools.Printing

Pretty-printing library for various models

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on SabreTools.Serialization:

Repository Stars
SabreTools/MPF
Redumper/Aaru/DiscImageCreator GUI in C#
SabreTools/BinaryObjectScanner
C# protection, packer, and archive scanning library
Version Downloads Last Updated
3.0.0 49 6/12/2026
2.3.0 672 3/16/2026
2.2.1 835 11/25/2025
2.2.0 283 11/24/2025
2.1.0 449 11/6/2025
2.0.2 860 10/7/2025
2.0.1 334 10/5/2025
2.0.0 454 9/29/2025
1.9.6 413 9/24/2025
1.9.5 392 9/21/2025
1.9.4 269 9/21/2025
1.9.3 251 9/21/2025
1.9.2 328 9/20/2025
1.9.1 331 9/6/2025
1.9.0 280 9/2/2025
1.8.7 556 5/19/2025
1.8.6 1,882 12/31/2024
1.8.5 293 12/31/2024
1.8.4 1,968 12/18/2024
1.8.3 506 12/13/2024
Loading failed