Retrofit 및 GSON을 사용하여 JSON 배열을 어떻게 구문 분석 할 수 있습니까?

Akshay Sood

Retrofit Gson을 통해 JSON 개체를 구문 분석하는 방법을 배웠지 만 Retrofit Gson을 통해 전체 JSON 배열을 구문 분석해야합니다.

다음을 구문 분석해야합니다.

"{\n" +
        "  \"snappedPoints\": [\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.2784167,\n" +
        "        \"longitude\": 149.1294692\n" +
        "      },\n" +
        "      \"originalIndex\": 0,\n" +
        "      \"placeId\": \"ChIJoR7CemhNFmsRQB9QbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.280321693840129,\n" +
        "        \"longitude\": 149.12908274880189\n" +
        "      },\n" +
        "      \"originalIndex\": 1,\n" +
        "      \"placeId\": \"ChIJiy6YT2hNFmsRkHZAbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.280960897210818,\n" +
        "        \"longitude\": 149.1293250692261\n" +
        "      },\n" +
        "      \"originalIndex\": 2,\n" +
        "      \"placeId\": \"ChIJW9R7smlNFmsRMH1AbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.28142839817933,\n" +
        "        \"longitude\": 149.1298619971291\n" +
        "      },\n" +
        "      \"originalIndex\": 3,\n" +
        "      \"placeId\": \"ChIJy8c0r2lNFmsRQEZUbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.28193988170618,\n" +
        "        \"longitude\": 149.13001013387623\n" +
        "      },\n" +
        "      \"originalIndex\": 4,\n" +
        "      \"placeId\": \"ChIJ58xCoGlNFmsRUEZUbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.282819705480151,\n" +
        "        \"longitude\": 149.1295597114644\n" +
        "      },\n" +
        "      \"originalIndex\": 5,\n" +
        "      \"placeId\": \"ChIJabjuhGlNFmsREIxAbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.283139388422363,\n" +
        "        \"longitude\": 149.12895618087012\n" +
        "      },\n" +
        "      \"originalIndex\": 6,\n" +
        "      \"placeId\": \"ChIJ1Wi6I2pNFmsRQL9GbW7qABM\"\n" +
        "    },\n" +
        "    {\n" +
        "      \"location\": {\n" +
        "        \"latitude\": -35.284728724835304,\n" +
        "        \"longitude\": 149.12835061713685\n" +
        "      },\n" +
        "      \"originalIndex\": 7,\n" +
        "      \"placeId\": \"ChIJW5JAZmpNFmsRegG0-Jc80sM\"\n" +
        "    }\n" +
        "  ]\n" +
        "}"

위도와 경도 만 필요합니다.

Retrofit GSON을 통해 JSON 개체를 구문 분석하는 방법은 다음과 같습니다.

package com.example.akshay.retrofitgson;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

/**
 * Created by Akshay on 9/6/2015.
 */
public class gitmodel {
    @SerializedName("latitude")
    @Expose
    public String latitude;
    @SerializedName("longitude")
    @Expose
    public String longitude;

    public void setLatitude(String latitude)
    {
        this.latitude = latitude;
    }
    public String getLatitude()
    {
        return latitude;
    }
    public void setLongitude(String longitude)
    {
        this.longitude = longitude;
    }

    public String getlatitude()
    {
        return  latitude;
    }
}
듀론 597

위도 / 경도 만 필요할 수도 있지만 가장 쉬운 방법은 POJO를 설정하여 모든 것을 얻은 다음 POJO에서 위도 경도를 추출하는 것입니다. 원하는 경우 내부 개체를 숨기도록 역 직렬화 된 개체를 디자인 할 수도 있습니다. JSON의 경우 매우 쉽습니다. 다음과 같이하십시오.

public static class SnappedPoints {
  private List<Point> snappedPoints;

  public String toString() {
    return snappedPoints.toString();
  }
}

public static class Point {
  private Location location;

  public double getLatitude() {
    return location.getLatitude();
  }

  public double getLongitude() {
    return location.getLongitude();
  }

  public String toString() {
    return "{" + location.getLatitude() + "," + location.getLongitude() + "}";
  }
}

public static class Location {
  double latitude;
  double longitude;

  public double getLatitude() {
    return latitude;
  }
  public double getLongitude() {
    return longitude;
  }
}

다음과 같이 간단하게 수행 할 수 있습니다.

public static void main(String[] args) {
  System.out.println(new Gson().fromJson(json, SnappedPoints.class));
}

또는 Retrofit의 경우 다음과 같습니다.

public interface MyRetrofitAPI {
  @GET("/path/to/json")
  void getSnappedPoints(/* arguments */, Callback<SnappedPoints> callback);
}

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Gson을 사용하여 Json 배열을 구문 분석 할 수 없습니다.

분류에서Dev

비정형 JSON을 어떻게 구문 분석 할 수 있습니까? (jQuery를 사용하여)

분류에서Dev

문자 'u'로 시작하는 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

gson을 사용하여 json을 구문 분석 할 수 없습니다.

분류에서Dev

Android에서 Gson으로이 JSON 문자열을 구문 분석하는 Java Bean을 어떻게 작성할 수 있습니까?

분류에서Dev

json의 게시 방법을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

json 객체에서 json 배열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

내 node.js 및 mongodb 쿼리에서 객체 배열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Realm.IO-createOrUpdateAllFromJson을 사용하여 JSON 배열을 구문 분석 할 수 있습니까?

분류에서Dev

키없이 JSON 파일을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

이 JSON을 Ruby에서 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

어떻게 GSON를 사용하여 JSON 파일을 구문 분석합니까?

분류에서Dev

Retrofit을 사용하여 매핑 할 JSON 태그 이름 및 값 구문 분석

분류에서Dev

StringUtils 또는 정규 표현식을 사용하여 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Python을 사용하여 동적 페이지를 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Swift 3을 사용하여이 JSON 복잡한 깊은 사전 데이터를 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Swift에서 사전으로 json을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

이 JSON 포켓몬 사전을 어떻게 구문 분석 할 수 있습니까? (스위프트 3)

분류에서Dev

함수가 포함 된 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

AJAX 성공 함수에서이 json 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

어떻게 이것을 자바 스크립트를 사용하여 객체 또는 배열로 구문 분석 할 수 있습니까?

분류에서Dev

자바 스크립트에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

자바 스크립트에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Delphi에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Retrofit2에서 CallAdapter를 생성하지 않고 json을 구문 분석 할 수 있습니까?

분류에서Dev

이 datetime 문자열을 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Parsec의 Perm을 사용하여 순열 구문의 비 연속적 요소를 어떻게 구문 분석 할 수 있습니까?

분류에서Dev

Nginx 및 Lua를 사용하여 POST 요청의 JSON 본문을 어떻게 조작 할 수 있습니까?

분류에서Dev

값만 있고 이름이없는 JSON을 어떻게 구문 분석 할 수 있습니까?

Related 관련 기사

  1. 1

    Gson을 사용하여 Json 배열을 구문 분석 할 수 없습니다.

  2. 2

    비정형 JSON을 어떻게 구문 분석 할 수 있습니까? (jQuery를 사용하여)

  3. 3

    문자 'u'로 시작하는 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

  4. 4

    gson을 사용하여 json을 구문 분석 할 수 없습니다.

  5. 5

    Android에서 Gson으로이 JSON 문자열을 구문 분석하는 Java Bean을 어떻게 작성할 수 있습니까?

  6. 6

    json의 게시 방법을 어떻게 구문 분석 할 수 있습니까?

  7. 7

    json 객체에서 json 배열을 어떻게 구문 분석 할 수 있습니까?

  8. 8

    내 node.js 및 mongodb 쿼리에서 객체 배열을 어떻게 구문 분석 할 수 있습니까?

  9. 9

    Realm.IO-createOrUpdateAllFromJson을 사용하여 JSON 배열을 구문 분석 할 수 있습니까?

  10. 10

    키없이 JSON 파일을 어떻게 구문 분석 할 수 있습니까?

  11. 11

    이 JSON을 Ruby에서 어떻게 구문 분석 할 수 있습니까?

  12. 12

    어떻게 GSON를 사용하여 JSON 파일을 구문 분석합니까?

  13. 13

    Retrofit을 사용하여 매핑 할 JSON 태그 이름 및 값 구문 분석

  14. 14

    StringUtils 또는 정규 표현식을 사용하여 어떻게 구문 분석 할 수 있습니까?

  15. 15

    Python을 사용하여 동적 페이지를 어떻게 구문 분석 할 수 있습니까?

  16. 16

    Swift 3을 사용하여이 JSON 복잡한 깊은 사전 데이터를 어떻게 구문 분석 할 수 있습니까?

  17. 17

    Swift에서 사전으로 json을 어떻게 구문 분석 할 수 있습니까?

  18. 18

    이 JSON 포켓몬 사전을 어떻게 구문 분석 할 수 있습니까? (스위프트 3)

  19. 19

    함수가 포함 된 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

  20. 20

    AJAX 성공 함수에서이 json 문자열을 어떻게 구문 분석 할 수 있습니까?

  21. 21

    어떻게 이것을 자바 스크립트를 사용하여 객체 또는 배열로 구문 분석 할 수 있습니까?

  22. 22

    자바 스크립트에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

  23. 23

    자바 스크립트에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

  24. 24

    Delphi에서 JSON 문자열을 어떻게 구문 분석 할 수 있습니까?

  25. 25

    Retrofit2에서 CallAdapter를 생성하지 않고 json을 구문 분석 할 수 있습니까?

  26. 26

    이 datetime 문자열을 어떻게 구문 분석 할 수 있습니까?

  27. 27

    Parsec의 Perm을 사용하여 순열 구문의 비 연속적 요소를 어떻게 구문 분석 할 수 있습니까?

  28. 28

    Nginx 및 Lua를 사용하여 POST 요청의 JSON 본문을 어떻게 조작 할 수 있습니까?

  29. 29

    값만 있고 이름이없는 JSON을 어떻게 구문 분석 할 수 있습니까?

뜨겁다태그

보관