Gson을 사용해서 JSON을 파싱하고자 합니다.


문자열로 표현된 JSON 데이터를 파싱하고 싶습니다. Google Gson을 사용하고 있는데요.

JSON 데이터:

jsonLine = "
{
 "data": {
  "translations": [
   {
    "translatedText": "Hello world"
   }
  ]
 }
}
";

구현하고자 하는 클래스:

public class JsonParsing{

   public void parse(String jsonLine) {

      // there I would like to get String "Hello world"

   }

}
  • 2016년 05월 20일에 작성됨

조회수 243


1 답변


좋아요
0
싫어요
채택취소하기

간단하게 다음과 같이 구현할 수 있습니다. 아래의 코드는 간단하게 주요 부분만 작성한 것이고 모든 예외 처리는 생략한 것입니다.

 public String parse(String jsonLine) {
    JsonElement jelement = new JsonParser().parse(jsonLine);
    JsonObject  jobject = jelement.getAsJsonObject();
    jobject = jobject.getAsJsonObject("data");
    JsonArray jarray = jobject.getAsJsonArray("translations");
    jobject = jarray.get(0).getAsJsonObject();
    String result = jobject.get("translatedText").toString();
    return result;
}

좀 더 일반화시키고자 한다면 Gson's javadoc을 참고하세요.

  • 2016년 05월 21일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close