【发布时间】:2016-11-30 18:47:37
【问题描述】:
我有一个这样的 JSON 字符串:
{"id":"111","name":"abc","ids":["740"],"data":"abc"}
我想切断字段"ids",但是我不知道像["740"] 这样的值。所以,它可能是例如["888,222"] 或其他。目标是获取不带"ids"字段的json字符串。
怎么做?我应该使用JackMapper吗?
编辑:
我尝试将JackMapper 用作JacksMapper.readValue[Map[String, String]](jsonString)to get only fields that I need. But the problem is that"ids":["740"]` 引发解析错误,因为它是一个数组。所以,我决定在解析之前切断这个字段,虽然这是一个丑陋的解决方案,理想情况下我只想将 json 字符串解析为 Map。
【问题讨论】:
-
您使用什么编程语言?
-
@BrankVictoria: scala,如标签所示
-
@cchantep:我尝试将
JackMapper用作JacksMapper.readValue[Map[String, String]](jsonString),然后只获取我需要的字段。但问题是"ids":["740"]抛出解析错误。所以,我决定在解析之前切断这个字段,虽然这是一个丑陋的解决方案,理想情况下我只想将 json 字符串解析为 Map。 -
我不了解 JacksMapper,但您可以尝试将您的值读取为
Map[String, JsonValue]这样,您可以摆脱ids而不会出现解析错误 -
@LouisF。这确实是个好主意。您能否在答案中显示它?