binary-util
A utility library for working with binary data in.
It does not have full support for all types of data, but it does have the ones I needed.
Usage
A full example of how to use this library can be found in my RE MSG library.
Here are some non-exhaustive examples:
Decoder
import { Decoder } from "binary-util"
const data = Buffer.from([
0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x21,
])
const decoder = new Decoder(data)
decoder.readString({ length: 5 })
decoder.readString({ length: 7 })
encoder.seek(-1)
encoder.seek(1)
encoder.alignTo(8)
const decoder2 = new Decoder(Buffer.alloc(2, 2))
const result = {
a: decoder2.readUint8(),
b: decoder2.readUint8(),
}
Encoder
import { Encoder } from "binary-util"
const encoder = new Encoder()
encoder.writeString("Hello, World")
encoder.seek(-1)
encoder.seek(1)
encoder.alignTo(8)
encoder.writeUint8(2)
encoder.goto(1)