JsonParseException : JSON 역 직렬화 실패

LoveTW

이 JSON 문자열을 역 직렬화하려고 할 때 아래 예외가 있습니다.

{ "studentName": "John", "studentAge": "20" }

예외:

com.google.gson.JsonParseException: The JsonDeserializer com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter@41d241d2 failed to deserialize json object { "studentName": "John", "studentAge": "20" } given the type java.util.List<...>
    at com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:64)
    at com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:92)

다음은 내 수업입니다.

public class School {

    Gson gson = new Gson();
    String json = ...// I can read json from text file, the string is like { "className": "Math", "classTime": "2013-01-01 11:00", "studentList": { "studentName": "John", "studentAge": "20" }}
    CourseInfo bean = gson.fromJson(json,  CourseInfo.class);
}

CourseInfo.java :

public class CourseInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    private String className;
    private Timestamp classTime;
    private List<StudentInfo> studentList;

    ...
}

StudentInfo.java

public class CourseInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    private String studentName;
    private String studentAge;

    ...
}
알렉시스 킹

읽으려는 객체와 일치하지 않는 일부 JSON을 읽으려고합니다. 특히 studentListJSON 값은 객체입니다.

{
    "studentName": "John",
    "studentAge": "20"
}

그러나 해당 개체를 목록으로 읽으려고합니다. 변수의 이름 studentList이이면 JSON이 코드가 아니라 잘못되었으며 대신 배열이어야한다고 생각합니다.

{
    "className": "Math",
    "classTime": "2013-01-01 11:00",
    "studentList": [
        {
            "studentName": "John",
            "studentAge": "20"
        }
    ]
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C # Json 역 직렬화 실패

분류에서Dev

WCF WebInvoke JSON 역 직렬화 실패-400 잘못된 요청

분류에서Dev

JSON 역 직렬화

분류에서Dev

Alexa Skill 요청 역 직렬화 실패-SkillRequest 개체에 대한 JSON C #

분류에서Dev

RestSharp로 JSON 역 직렬화

분류에서Dev

JSON C # 역 직렬화

분류에서Dev

JSON 개체 역 직렬화

분류에서Dev

Json .Net 역 직렬화

분류에서Dev

배열 JSON 역 직렬화

분류에서Dev

Json 파일 역 직렬화

분류에서Dev

JPA + JSON 역 직렬화

분류에서Dev

JSON 파일 역 직렬화

분류에서Dev

Json String .net 역 직렬화

분류에서Dev

c # Json 역 직렬화 식

분류에서Dev

C # : JSON 역 직렬화

분류에서Dev

JSON C # 역 직렬화

분류에서Dev

JSON C # 역 직렬화

분류에서Dev

Web Json 역 직렬화

분류에서Dev

C # Json 역 직렬화가 json 문자열의 첫 번째 문자에서 실패 함

분류에서Dev

Play Framework Json 직렬화 실패

분류에서Dev

Json.Net 역 직렬화 역 참조

분류에서Dev

newtonsoft json 역 직렬화 오류 처리 : 부분 역 직렬화

분류에서Dev

System.Text.Json 역 직렬화가 JsonException "많이 읽거나 충분하지 않음"으로 실패합니다.

분류에서Dev

C # JSON 내에서 JSON 역 직렬화

분류에서Dev

json.net으로 JSON 역 직렬화

분류에서Dev

Json 배열 Newtonsoft.Json 역 직렬화

분류에서Dev

System.Text.Json 사용자 지정 직렬화 / 역 직렬화

분류에서Dev

iOS 라이브러리 JSON 직렬화 / 역 직렬화

분류에서Dev

Java 직렬화 / 역 직렬화에 대한 안전한 json