API에서 나는 정상적인 키 => 값 쌍 대신 일반 JSON 배열로 특정 부분을받습니다. 그 어리 석다. 그러나 그것은 내가 처리해야하는 것이다.JSONArray를 위치별로 객체로 매핑하십시오.
예 :
{"build":29625,"list": [
[312218505,1000,624437010,21997878697,35228,0,0,0],
[186873474,0,0,0,0,-1,0,0]
...
]}
문제는 일반 객체의 필드에 각 배열의 위치를지도 구글 GSON을 받고있다. 당연히 거기에 고유 한 솔루션을 롤백했다 네이티브 지원이 없기 때문에 : 변환이 필요한 각 "요청"convertToObjects()
및 convertToJson()
메서드를 가진 CustomConvert 인터페이스를 구현합니다. 각 '항목'에는 @ArrayPosition(number)
특수 효과가있는 일련의 입력란이 있습니다. convert 메서드는 두 목록간에 변환합니다.
Google GSON 또는 Java 용 JSON 라이브러리를 사용하면 더 좋은 방법이 있습니까?
님, gson serializer/deserializer를 작성 하시겠습니까? 수신중인 JSON의 예를 들려 줄 수 있습니까? –
@Brian 편집을 참조하십시오. 그리고 serializer/deserializer가있는 TMK는 JSONArray를 반환하는 다른 것을 엉망으로 만들 것입니다. – TheLQ
List/array 용으로 작성하지 마십시오. build 필드와 List 필드를 포함하는 객체에 대해 하나를 작성합니다 . 'MyObject'의 생성자에 매개 변수 목록을 전달하여 각각을 인스턴스화하고'List'에 추가하십시오. (JSON 배열의 각 내부 배열이 같은 유형의 객체를 나타낼 것이라고 가정합니다) –