ubjson is an implementation of the Universal Binary JSON (UBJSON) computer data interchange format for the Scala programming language.
The following example program shows how to use the convenience functions to write a Scala Map
object to a UBJSON byte array, and then read that array back to create an equivalent Map
.
import xyz.hyperreal.ubjson._
object Main extends App {
val ubjson = writeUBJSON( Map("a" -> "asdf", "b" -> 5) )
println( ubjson.toList map (b => if (b < ' ') b.toString else b.toChar) mkString " " )
println( readUBJSON(ubjson) )
}
This program prints
{ i 1 a S i 4 a s d f i 1 b i 5 }
Map(a -> asdf, b -> 5)
which is the contents of the UBJSON byte array, and the resulting Map
that was read from it.
Use the following definition to use ubjson in your Maven project:
<repository>
<id>hyperreal</id>
<url>https://dl.bintray.com/edadma/maven</url>
</repository>
<dependency>
<groupId>xyz.hyperreal</groupId>
<artifactId>ubjson</artifactId>
<version>0.3</version>
</dependency>
Add the following to your build.sbt
file to use ubjson in your SBT project:
resolvers += "Hyperreal Repository" at "https://dl.bintray.com/edadma/maven"
libraryDependencies += "xyz.hyperreal" %% "ubjson" % "0.3"
- Java 11+
- SBT 1.2.8+
- Scala 2.13.0+
git clone git://github.com/edadma/ubjson.git
cd ubjson
sbt test
ISC © 2019 Edward A. Maxedon, Sr.