gpt4 book ai didi

java - 解码 JSON 字符串以生成 java 中的对象时的解析问题

转载 作者:搜寻专家 更新时间:2023-10-31 20:21:05 25 4
gpt4 key购买 nike

场景:

我正在使用以下代码解码 JSON 字符串以生成使用它的对象。

enter image description here

{"av":{"tid":"1000","sslist":[{"ss":{"ssId":"1","ssName":"Test ss "name one"}},{"ss":{"ssId":"2","ssName":"Test ss name two"}}],"hl":{"lc":0}}}

现在,我有数百个 sslist 元素,所有元素都失败了,因为第一个 ss 中 ssName 中的一个血腥 " 元素。

但是这个错误是在 createJsonParser() 方法最开始解析字符串时抛出的。

问题:

我只想忽略容易出错的节点,继续处理其他数百个正确的节点。还有其他方法吗?

代码:

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonFactory;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.JsonNode;

public class JsonReader {

private void readJsonMethodThree(String jsonString) throws JsonParseException, IOException{

ObjectMapper mapper = new ObjectMapper();
JsonFactory factory = mapper.getJsonFactory();
JsonParser jsonParser = factory.createJsonParser(jsonString);
JsonNode jsonNode = mapper.readTree(jsonParser);

}

}

异常:

Exception in thread "main" com.fasterxml.jackson.core.JsonParseException: Unexpected character ('n' (code 110)): was expecting comma to separate OBJECT entries
at [Source: java.io.StringReader@12cc95d; line: 1, column: 69]

最佳答案

yourjsonstring = yourjsonstring.replaceAll("\"name", "name");

或使用更通用的模式,这只是示例。

关于java - 解码 JSON 字符串以生成 java 中的对象时的解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17614898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com