Конвертировать массив POJO в JSONObject - PullRequest
0 голосов
/ 14 февраля 2019

Мой оператор печати возвращает следующую строку, где 'movies' - ArrayList класса 'Movies'.

System.out.print(new Gson().toJson(movies))

O / P

[{"movie_name":"Interstellar11","movie_rating":0.0,"votes_numb":0,"theatreNameList":[],"showTimingList":[]},{"movie_name":"Titanic","movie_rating":0.0,"votes_numb":0,"theatreNameList":[],"showTimingList":[]},{"movie_name":"Titanic66","movie_rating":0.0,"votes_numb":0,"theatreNameList":[],"showTimingList":[]},{"movie_name":"Avatar","movie_rating":0.0,"votes_numb":0,"theatreNameList":[],"showTimingList":[]}]

Я хочу преобразовать вышеуказанную строкув JSON.Когда я передаю вышеупомянутую строку в:

JSONObject jsonObj = new JSONObject(new Gson().toJson(movies))

, она показывает мне ошибку как org.json.JSONException: A JSONObject text must begin with '{' at character 1

Как мне преобразовать вышеуказанную строку в JSONObject?

1 Ответ

0 голосов
/ 14 февраля 2019

Создайте класс для хранения объектов.

public class Movie_Details{
   private String movie_name;
   private String movie_rating;
   private String votes_numb;
   private ArrayList theatreNameList;
}

Затем десериализуйте следующим образом:

Gson gson = new Gson();
Movie_Details[] movie_details = gson.fromJson(input, Movie_Details[].class); //input is your String
System.out.println(Arrays.toString(movie_details));// Print array.

Справочный товар: http://blog.patrickbaumann.com/2011/11/gson-array-deserialization/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...