我有一个Json文件或字符串,例如:
{
"my-key0": "ke0",
"key-Arr": [
{
"nested-key1": {
"value": "val",
"seqno": 12
},
"nested2": 1
},
{
"dns-sss-qqq": [
{
"some": "aaaaa"
}
]
}
],
"recsize": 459,
"my-obj": {
"my-key1": {
"my-key2": "key2"
}
}
}
我的目的是取代" - " char to" _"仅在Scala / Java中的密钥中使用char。
首先,我认为可以使用REGEX完成,但键可以是UNQUOTED,它也可以影响值。 什么是最有效的方式?(性能是关键) 我必须处理这些记录的GB。 谢谢
答案 0 :(得分:1)
尝试jsoniter-scala - it supports kebab-case since v0.17.0并且它在解析和序列化方面比jackson-module-scala
更有效。
Here are latest results基准测试比较解析&使用JDK 8的jsoniter-scala
与jackson-module-scala
,circe
和play-json
库的序列化性能。
它还能够parse streaming JSON values and JSON arrays from java.io.InputStream
无需在内存中保存所有已解析的值。
提取一些选定的字段或子结构而不是解析整个消息或文档是jsoniter-scala闪耀的地方。
因此,请尝试使用它而不是转换所有数据。