2015-05-26 4 views
1

я хотел бы знать, как я могу преобразовать эту строку здесь в массив:Преобразование строки в JSON массив из веб-запроса

[{"title":"test","birth":"20.05"},{"title":"test","birth":"13.05"},{"title":"test","birth":"13.06"},{"title":"test","birth":"23.06"},{"title":"test","birth":"01.12"},{"title":"test","birth":"01.06"}] 

Я уже нашел это здесь:

JSONObject jsnobject = new JSONObject(readlocationFeed); 
JSONArray jsonArray = jsnobject.getJSONArray("locations"); 
for (int i = 0; i < jsonArray.length(); i++) { 
    JSONObject explrObject = jsonArray.getJSONObject(i); 

Но если я пытаюсь чтобы сделать объект, я всегда получаю null. И здесь:

JSONArray jsonArray = jsnobject.getJSONArray("locations"); 

Я не знаю, что мне следует вводить как «места». Должен ли я вводить «[]»?

Большое спасибо за помощь!

Daniel

ответ

0

Я не знаю, что я должен войти в "местах". Должен ли я вводить «[]»?

Ничего readlocationFeed уже есть JSONArray. Вам просто нужно

JSONArray jsonArray = new JSONArray(readlocationFeed); 

без

JSONObject jsnobject = new JSONObject(readlocationFeed); 
JSONArray jsonArray = jsnobject.getJSONArray("locations"); 
+0

будет честью, если вы посмотрите на мой [вопрос] (http://stackoverflow.com/q/ 30473371/3287204) ... :) –

0

Не должно быть наоборот?

JSONArray jsnArray = new JSONArray(readlocationFeed); 

Во всяком случае я предлагаю вам следует использовать GSON для такого рода проблемы:

Gson gson = new Gson(); 
MyClass[] arr = gson.fromJson(str, MyClass[].class); 

class MyClass{ 
    double birth; 
    String title;  
}