NamedBinaryTag 1.2.0

Suggested Alternatives

Minesharp.Nbt

dotnet add package NamedBinaryTag --version 1.2.0                
NuGet\Install-Package NamedBinaryTag -Version 1.2.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="NamedBinaryTag" Version="1.2.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NamedBinaryTag --version 1.2.0                
#r "nuget: NamedBinaryTag, 1.2.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.
// Install NamedBinaryTag as a Cake Addin
#addin nuget:?package=NamedBinaryTag&version=1.2.0

// Install NamedBinaryTag as a Cake Tool
#tool nuget:?package=NamedBinaryTag&version=1.2.0                

NamedBinaryTag

Using static methods

public static void Main(string[] args)
{
    var tag = new CompoundTag
    {
        ["MyShort"] = new ShortTag(456),
        ["MyInt"] = new IntTag(4),
        ["MyDouble"] = new DoubleTag(57.5),
        ["MyCompound"] = new CompoundTag
        {
            ["MyByte"] = new ByteTag(1),
            ["MyLong"] = new LongTag(48747),
            ["MyFloat"] = new FloatTag(49.84f)
        },
        ["MyList"] = new ListTag
        {
            new StringTag("Named"),
            new StringTag("Binary"),
            new StringTag("Tag")
        },
        ["MyByteArray"] = new ByteArrayTag { 1, 2, 3 },
        ["MyIntArray"] = new IntArrayTag { 1, 2, 3 },
        ["MyLongArray"] = new LongArrayTag { 1, 2, 3 }
    };

    var compressedBytes = NamedBinaryTagConverter.GetBytes(tag, true);
    var compressed = NamedBinaryTagConverter.FromBytes(compressedBytes, true);
    
    var uncompressedBytes = NamedBinaryTagConverter.GetBytes(tag);
    var uncompressed = NamedBinaryTagConverter.FromBytes(uncompressedBytes);
    
    var serialized = NamedBinaryTagConverter.GetString(tag);
}

Using streams

public static void Main(string[] args)
{
    var tag = new CompoundTag
    {
        ["MyShort"] = new ShortTag(456),
        ["MyInt"] = new IntTag(4),
        ["MyDouble"] = new DoubleTag(57.5),
        ["MyCompound"] = new CompoundTag
        {
            ["MyByte"] = new ByteTag(1),
            ["MyLong"] = new LongTag(48747),
            ["MyFloat"] = new FloatTag(49.84f)
        },
        ["MyList"] = new ListTag
        {
            new StringTag("Named"),
            new StringTag("Binary"),
            new StringTag("Tag")
        },
        ["MyByteArray"] = new ByteArrayTag { 1, 2, 3 },
        ["MyIntArray"] = new IntArrayTag { 1, 2, 3 },
        ["MyLongArray"] = new LongArrayTag { 1, 2, 3 }
    };

    // Without compression
    using (var file = File.Create("example.nbt"))
    using (var writer = new TagWriter(file))
    {
        writer.Write(tag);
    }
    
    // With compression
    using (var file = File.Create("example.nbt"))
    using (var writer = new CompressedTagWriter(file))
    {
        writer.Write(tag);
    }

    // Without compression
    using (var file = File.OpenRead("example.nbt"))
    using (var reader = new TagReader(file))
    {
        tag = reader.ReadTag();
    }
    
    // With compression
    using (var file = File.OpenRead("example.nbt"))
    using (var reader = new CompressedTagReader(file))
    {
        tag = reader.ReadTag();
    }
}
Product Compatible and additional computed target framework versions.
.NET 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 was computed.  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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.