Converting JSON string to a JSON object in Scala Converting JSON string to a JSON object in Scala json json

Converting JSON string to a JSON object in Scala


Note: Technically, there is no longer a core Scala "native" way of parsing JSON. You should use an external, supported library like Spray JSON or Play JSON.

As of Scala 2.11 the parser-combinator library is no longer included in the core language jar and needs to be added separately to your project. Further, the JSON parser has since been deprecated in the community supported version of the parser-combinator library. I would not recommend using this library.

You can still add it to your project, if you choose to, by adding the following to your build.sbt:

libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.4"

You can find the source code for the library at https://github.com/scala/scala-parser-combinators.


Since you asked specifically about Scala's native facilities for JSON parsing – the package you are looking for is the scala.utils.parsing.json. Something like the following should work:

import scala.util.parsing.json._val parsed = JSON.parseFull("""{"Name":"abc", "age":10}""")

parsed will take on the value: Some(Map(Name -> abc, age -> 10.0))


Also you can use Json Library from play framework, but can be used as standalone lib also. This library based on good but abandoned Jerkson project, which is a Scala wrapper around the super-fast Java based JSON library, Jackson. And it has very rich and good documented toolset for working with JSON - transofrmers, validators and etc.

import play.api.libs.json._val json: JsValue = Json.parse("""{"a":1}""")

To use this lib without play just install it in build.sbt with string

libraryDependencies += "com.typesafe.play" %% "play-json" % "2.3.0"


You might want to use a library like Spray JSON. It provides a lot of easy to use functionality for converting to and from JSON.If you decide to use Spray JSON you can do this:

import spray.json._// some code hereval json = "your json string here".parseJson