NBT-Manipulator

A kotlin/java lib that allows you to read and write NBT data in a clean way

View on GitHub

//nbt-manipulator/br.com.gamemods.nbtmanipulator/NbtIO

NbtIO

[jvm]
object NbtIO

Contains useful methods do read and write NbtFile from File and InputStream/OutputStream.

Functions

Name Summary
readNbtFile [jvm]
@JvmStatic
@JvmOverloads
fun readNbtFile(file: File, compressed: Boolean = true, littleEndian: Boolean = false, readHeaders: Boolean = false): NbtFile
Read a NbtFile from a File.
[jvm]
@JvmStatic
@JvmOverloads
fun readNbtFile(inputStream: InputStream, compressed: Boolean = true, littleEndian: Boolean = false, readHeaders: Boolean = false): NbtFile
Read a NbtFile from the InputStream.
readNbtFileDetectingSettings [jvm]
@JvmStatic
fun readNbtFileDetectingSettings(file: File): NbtFile
Does an exhaustive attempts to load the NBT file, returning it if any of the attempts is successful.
readNbtFileDirectly [jvm]
@JvmStatic
fun readNbtFileDirectly(input: DataInput): NbtFile
Reads a NbtFile from the input. This method does not read the Bedrock Edition version and length headers.
readNbtTagDirectly [jvm]
@JvmStatic
inline fun <T : NbtTag> readNbtTagDirectly(input: DataInput): T
@JvmStatic
fun <T : NbtTag> readNbtTagDirectly(input: DataInput, tagType: Class<T>? = null): T
Reads a NbtTag of type T from the input directly, this is a reader for writeNbtTagDirectly.
writeNbtFile [jvm]
@JvmStatic
@JvmOverloads
fun writeNbtFile(outputStream: OutputStream, file: NbtFile, compressed: Boolean = true, littleEndian: Boolean = false)
Writes the NbtFile in the stream. This method does not write the Bedrock Edition version and length headers.
[jvm]
@JvmStatic
@JvmOverloads
fun writeNbtFile(file: File, tag: NbtFile, compressed: Boolean = true, littleEndian: Boolean = false, writeHeaders: Boolean = false)
Writes the NbtFile in a File.
writeNbtFileAsOriginal [jvm]
@JvmStatic
fun writeNbtFileAsOriginal(outputStream: OutputStream, file: NbtFile)
Calls writeNbtFile using the information stored in the NbtFile, uses the method’s default when the information is missing (null). This method does not write the Bedrock Edition version and length headers.
writeNbtFileDirectly [jvm]
@JvmStatic
fun writeNbtFileDirectly(output: DataOutput, file: NbtFile)
Writes the NbtFile to the output. This method does not write the Bedrock Edition version and length headers.
writeNbtTagDirectly [jvm]
@JvmStatic
fun writeNbtTagDirectly(output: DataOutput, tag: NbtTag, writeTypeId: Boolean = true)
Writes the NbtTag directly, without name and optionally without type id.