programing

고속 XML 잭슨:큰따옴표 삭제

showcode 2023. 4. 5. 22:30
반응형

고속 XML 잭슨:큰따옴표 삭제

다음 json이 있습니다.

{"test":"example"}

Speed XML Jackson의 다음 코드를 사용합니다.

JsonParser jp = factory.createParser("{\"test\":\"example\"}");
json = mapper.readTree(jp);
System.out.println(json.get("test").toString());

출력:

"example"

잭슨은 큰따옴표를 삭제하는 설정이 있나요?

음, 당신이 얻을 수 있는 것은.get("test")는 입니다.JsonNode그리고 공교롭게도TextNode; 당신이.toString()이것은, 그 문자열 표현을 반환합니다.TextNode그래서 그런 결과를 얻을 수 있습니다.

원하는 것은 다음과 같습니다.

.get("test").textValue();

JSON String 자체의 실제 내용을 반환합니다(스케이핑되지 않은 모든 내용 등).

이 경우 null이 반환됩니다.JsonNode 아니다TextNode.

따옴표로 둘러싸지 않은 텍스트를 사용하기 위한 단순 일반 3진수. 그렇지 않으면 노드를 그대로 유지합니다.

node.isTextual() ? node.asText() : node

jsonValue.get("value").isString().stringValue()

또한 단일 회선 메서드를 호출하기 전에 null을 확인하십시오.

언급URL : https://stackoverflow.com/questions/28646572/faster-xml-jackson-remove-double-quotes

반응형