У меня есть JSON получил от OMDb, как это:Разбираем сложный JSon объект с Gson
{
"Search":
[{"Title":"Seven Pounds",
"Year":"2008",
"imdbID":"tt0814314",
"Type":"movie",
"Poster":"someUrl"},
{"Title":"Seven Samurai",
"Year":"1954",
"imdbID":"tt0047478",
"Type":"movie",
"Poster":"someUrl"}
],"totalResults":"1048",
"Response":"True"
}
Я хотел бы, чтобы извлечь каждый фильм и сохранить его в список, так что я создал класс MovieContainer со списком Фильм, который содержит набор строк.
Я использовал
MovieContainer cnt=new Gson().fromJson(jstring, MovieContainer.class);
где jstring является строка с JSON, как показано выше, но когда я пытаюсь перебрать список в контейнер я получаю NullPointerException.
Поскольку я новичок в Gson, я не могу понять, почему, как мне разобрать Json?
EDIT: Я знаю, что такое NullPointerException, но я не понимаю, почему Java выбрасывает его в моем примере.
Мой класс MovieContainer:
public class MovieContainer {
public List<Movie> movies;
}
Мой класс фильм:
public class Movie {
String Title;
String Year;
String Poster;
String imdbID;
String Type;
}
Я думаю, что метод fromJson должен заполнить свой список с информацией, совпадающим с именем поля, но список фильмов указывает на нулевое значение ,
Возможный дубликат [Что такое исключение NullPointerException и как его исправить?] (Http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix -it) –
Пожалуйста, отредактируйте свой вопрос, чтобы включить [mcve]. –
Научитесь читать JSON (перейдите на json.org). Самый внешний объект - это словарь с одним элементом с именем «Поиск». –