질문은 JsonElement에 대한 것입니다. 그것은 Json의 키 값입니다. 따라서 문자열이 허용됩니다. 공백이없는 것처럼 보입니다.공백이 있으면 간단한 문자열에서 JSON이 충돌합니다.
왜 다음 줄에서 JSON 구문 예외가 발생합니까?
new JsonParser().parse("Nexus 6")
예외 스택 추적 :
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 8 path $
at com.google.gson.JsonParser.parse(JsonParser.java:65)
at com.google.gson.JsonParser.parse(JsonParser.java:45)
업데이트 : 내가하는 JsonElement
업데이트에 문자열로 변환됩니다에 관심이 무엇
:
는 이유는 무엇입니까이 작업?
new JsonParser().parse("Blah");
업데이트 3 :
이것은 또한 작동합니다
new JsonParser().parse("Nexus_6")
"Nexus 6"은 (는) 유효한 JSON이 아닙니다. –
JsonReader.setLenient (true)를 사용하여 기형의 JSON을 허용합니다. – Ufkoku
@MuhammadSaqlain : 문자열입니다. 왜 유효하지 않습니까? – Jim