У меня есть строка JSON, такая как ниже. Это происходит с веб-сайта (URL-адрес ниже на страницу), который я использую в приложении для Android.
{"posts": [{"id":"0000001","longitude":"50.722","latitude":"-1.87817","position":"Someplace 1","altitude":"36","description":"Some place 1 "},{"id":"0000002","longitude":"50.722","latitude":"-1.87817","position":"Some PLace 2","altitude":"36","description":"Some place 2 description"}]}
Я хотел бы десериализовать это в Список, где я могу потом повторить их в приложении. Как мне это сделать? Я создал класс со свойствами и методами и классом List, как показано ниже, а затем использовал fromJson
для его десериализации, но он возвращает NULL. Надеюсь, что вопрос ясен и большое спасибо заранее.
ListClass
пакет dataaccess;
import java.util.List;
public class LocationList {
public static List<Location> listLocations;
public void setLocationList(List <Location> listLocations) {
LocationList.listLocations = listLocations;
}
public List<Location> getLocationList() {
return listLocations;
}
}
GSON
public LocationList[] getJsonFromGson(String jsonURL) throws IOException{
URL url = new URL(jsonURL);
String content = IOUtils.toString(new InputStreamReader(url.openStream()));
LocationList[] locations = new Gson().fromJson(content, LocationList[].class);
return locations;
}