Как бы я преобразовать элемент JSONObject в массив одного элемента?

Я использую org.json.JSONObject и определите объект json, который был преобразован из XML. Я хочу иметь возможность преобразовать один из элементов JSON в массив из одного элемента, но неясно, как это сделать. Например, скажем, у меня есть следующий JSON:

{
    "heading": "value",
    "numbers": [1,2,3],
    "onevalarray": "MyVal"
}

хранится в org.json.JSONObject объект. Однако я хочу, чтобы элемент "onevalarray" был массивом из одного элемента:

{
    "heading": "value",
    "numbers": [1,2,3],
    "onevalarray": ["MyVal"]
}

Как бы я это сделал?

1 ответ

Решение

Вызовите метод getJsonArray в объекте JSONbject и укажите имя свойства в JSONObject, в котором есть JSONArray, следующим образом:

Представьте, что myJsonObject имеет это:

{"heading": "value", "numbers": [1,2,3], "onevalarray": "MyVal"}

И вы хотите JSONArray с данными onevalarray. Попытайся:

 JSONArray jsonArray = myJsonObject.getJSONArray("onevalarray");

Как только вы получите значение onevalarray в JSONArray onevalarray, удалите onevalarray из исходного массива и снова поместите его следующим образом:

myJsonObject.remove("onevalarray");

myJsonObject.put("onevalarray", jsonArray);
Другие вопросы по тегам