Сохраните объект JSON в виде строки и напечатайте каждое значение в Java - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть объект JSON {"name":["123-abc","234-bca","567-yuio"]} с неизвестной длиной.Мне нужно сохранить его как строку, разделить запятые и повторить, чтобы вывести только значение, т.е. сначала нужно напечатать 123-abc, затем 234-bca и т. Д. -> Input: {"name":["123-abc","234-bca","567-yuio"]} -> Output: 123-abc 234-bca 567-yuio

Пожалуйста, помогите мне, поскольку я новичок в кодировании.Спасибо

Ответы [ 3 ]

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

Вам не нужно хранить его как строку, вы можете просто извлечь этот массив из объекта JSON и выполнить итерацию по нему.

JSON obj = new JSONObject(); //Get/store your data however you'd like. I will call it obj
String[] name  = obj.get( "name" );
for (int i = 0; i < name.length; i++) { //Loop through your array and output each part
    System.out.println( name[ i ] );
}

Если вам нужно преобразовать objдля использования строки можно использовать функцию .toString().Но вышесказанное должно быть самым простым способом вывода этих данных.

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

Вы можете попробовать это:

JSONObject json = (JSONObject) object;
String input = json.get("name");
//String input = "\"123-abc\",\"234-bca\",\"567-yuio\"";
String[] strArray = input.split(",");
for (String string : strArray)
    System.out.println(string.replace("\"", ""));

Здесь объект - это место, где вы сохранили свой объект JSON.

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

Сначала вам нужно разделить строку запятыми, и вам нужно перебрать список разбиения, используя, например, цикл for:

for (String val : input.substring(1, input.length() - 1).split(",")) {
    System.out.println(val.replace("\"", ""));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...