Json格式 - scala

时间:2014-12-17 05:30:03

标签: json scala

我需要在scala中以下列方式构建Json格式。如何实现相同的?

{
 "name": "protocols",
 "children": [
  {
   "name": "tcp", "children": [
     {
      "name": "source 1",
    "children": [
     {
      "name": "destination 1",
        "children": [
     {
      "name": "packet 1"
     },
     {
      "name": "packet 4"
     }
   ]
     },
     {
      "name": "destination 2","children": [
     {
      "name": "packet 1"
     },

     {
      "name": "packet 4"
     }
   ]
     },

我需要像这样的树结构才能对文件进行修改。

1 个答案:

答案 0 :(得分:0)

如果您正在使用游戏,您的json结构可以用单个案例类

表示

这是一个示例,此案例类称为Node

import play.api.libs.json.Json

case class Node(name: String, children: List[Node] = Nil)

implicit val format = Json.format[Node]

val childSource1 = Node("destination 1", List(Node("packet 1"), Node("packet 4")))
val childSource2 = Node("destination 2", List(Node("packet 1"), Node("packet 4")))

val source1 = Node("source 1", List(childSource1, childSource2)) 

val example = Node("protocols", List(Node("tcp", List(source1))))

Json.prettyPrint(Json.toJson(example))