在Scala中解析JSON并为每个键创建变量

时间:2017-05-28 06:37:53

标签: json scala

我是scala的新手,我正在尝试解析下面显示的JSON

val result = JSON.parseFull("""
  {"name": "Naoki",  "lang": ["Java", "Scala"] , "positionandvalue": ["5:21", "6:24", "7:6"]}
""")
result: Option[Any] = Some(Map(name -> Naoki, lang -> List(Java, Scala), positionandvalue -> List(5:21, 6:24, 7:6)))

在Map中获取解析后的值

val myMap = result match {
  case Some(e) => e
  case None => None
}
myMap: Any = Map(name -> Naoki, lang -> List(Java, Scala), positionandvalue -> List(5:21, 6:24, 7:6))

我需要的是什么 1.将密钥作为新变量(用作验证文件的元数据),并为其分配相应的值。像,

val name = "Naoki"
  1. positionandvalue - >清单(5:21,6:24,7:6)。此变量指示列表(文件中的字符串分隔位置:字符串的长度)。如何使用此变量来满足要求。

1 个答案:

答案 0 :(得分:0)

您无法从Map键动态创建变量SET sql_mode=''; SELECT people.name, GROUP_CONCAT(item_name) AS person_items FROM items JOIN person_item ON person_item.item_id=items.id JOIN people ON people.id=person_item.person_id WHERE people.id=1; +------+-------------------+ | name | person_items | +------+-------------------+ | abel | armor,sword,knife | +------+-------------------+ 。但是,可以使用以下方法静态创建它们。

name