如何使用scala从json配置文件读取对象数组
我的json文件如下所示:如何使用scala从json配置文件读取对象数组,json,scala,Json,Scala,我的json文件如下所示: { "array":[ { "name": ["na"], "age": "15" }, { "name": ["aa","bb"], "age": "12" }, { "name": ["rr,yy"], "age": "22"
{
"array":[
{
"name": ["na"],
"age": "15"
},
{
"name": ["aa","bb"],
"age": "12"
},
{
"name": ["rr,yy"],
"age": "22"
},
} ]
我尝试读取一个配置文件并获取名称和年龄
我试过了,但没有结果:
val defaultSvaipConfig = ConfigFactory.load()
val config = ConfigFactory.parseFile(new File("config.json"))
val pathFileConfig = config.getConfig("array")
我也试过:
ConfigFactory.parseFile(new File("application.json"))
config.getConfigList("mapConfig").asScala.map { conf =>
val name = config.getString("name")
val value = config.getString("age")
ConfigData(name, age)
这可能不是您想要的答案,但对于类似的内容,我喜欢使用circe():
这看起来不像一个配置文件。为什么不将文件作为字符串读取并使用Circe或类似的东西来解析它呢?类型安全配置支持that@cchantep当前位置我不知道该怎么做。我试过了,但没有结果。括号不匹配,但可能是剪切粘贴错误。您会遇到什么错误?使用gson会有所帮助
import com.typesafe.config.ConfigFactory
import io.circe.generic.auto._
import io.circe.config.syntax._
case class Something(name: List[String], age: String)
case class WholeConfig(array: List[Something])
val config: Either[Error, WholeConfig] = ConfigFactory.load.as[WholeConfig]