나는 내 PHP 파일에서받은 다음 JSON 배열을 구문 분석을 시도하고있다 :안드로이드 JSON/GSON의 직렬화
actionsArray = [[ "19.431", "19.438"], [[ "8", "(107) "], []], ["u1 ","u2 "]]
주로 배열 [["8 ","107 "], []]에 액세스하려고합니다. 그러나, 나는 오류 "com.google.gson.JsonParseException : 기대 배열하지만 발견 객체 이름 : 널 그램 : 널 (null) 0 작업 :
사용자 클래스가 포함되어 여기
널 내 코드에서 발췌입니다 : 문자열 이름,
( here 가능한 소스)["first","second"]
로 매소드로 .toString() 반환 당신은 당신의 JSON 필요
JSONArray inputarray;
try {
int[] userActionsArray = new int[0];
inputarray = new JSONArray(br.readLine());
JSONArray gramsArray = (JSONArray)inputarray.get(0);
JSONArray actionsArray = (JSONArray)inputarray.get(1);
JSONArray namesArray = (JSONArray) inputarray.get(2);
User[] values = new User[namesArray.length()];
Gson gson = new Gson();
*User userAction = gson.fromJson(inputarray.toString(), User.class);
//error occurs on the above line*
...
안녕하세요, 귀하의 회신에 감사드립니다. 이는 의미가 있지만 JSONArray가 {myArray : [ "first", "second"]} 지정된 형식을 따르는 적절한 방법이 무엇인지 모르겠습니다. 저를 올바른 방향으로 가르쳐 주시겠습니까? – user836200
전체 JSON을 볼 수 있도록 루프를 생성하고 모든 행을 인쇄 할 수 있습니까? (그냥 br.readLine()을 반복하여 출력하십시오). 아니면 수동으로 JSON을 생성하고 있습니까? –
ArrayList 객체를 사용한 후에 문제를 해결할 수있었습니다. 나는 gson을 포기하고 JSONArrays를 유지했다. PHP 파일에서 JSONArray를 검색했습니다. 도와 주셔서 감사합니다 (+1). – user836200