如何在Java中将无效的JSON字符串转换为JSONObject?
我有一个如下的字符串响应,它是一个无效的json,因为它包含"obj13="
。我想把它转换成JSONObject(JAVA)
并使用它。有没有什么好方法可以不使用字符串拆分操作将其转换为JSONObject
obj13={
players: [
{
name: "rocky",
place: "brazil",
age: "21",
},
{
name: "andy",
place: "New Zealand",
age: "23",
}
]
}
# 1 楼答案
当然,这是JavaScript,而不是JSON。如果可以的话,我会返回服务提供商并请求JSON响应
如果字符串的格式一致,则可以使用:
然后解析结果。请注意,大多数好的解析器都应该有一个选项,允许关键字不带引号,并允许额外的逗号(mine does,但不幸的是,它并没有创建JSONObject,而是一个较低的级别—它被设计为构造调用方选择的数据结构,如果您需要的话,它可以是JSONObject,但您必须对其进行编码)
如果结果可能有赋值,也可能没有赋值,那么您可能需要更进一步,并确保“=”之前的非空白字符对JS标识符有效,而“{”之后的第一个非空白字符对JS标识符有效