2017-01-27 9 views
0

Мне нужно преобразовать строку в формат json в scala. Строка выглядит так:преобразование строки в формат json в scala

"classification" : "Map(Metals -> List(Cu, Co, Ni), Nonmetals -> List(N,O,C), Noblegases -> List(Ar, Kr))" 

желаемый формат JSON как это:

"classification" : {"Metals": [Cu, Co, Ni], 
        "Nonmetals":[N,O,C], 
        "Noblegases":[Ar, Kr] 
        } 

Любые быстрые предложения будут оценены.

+0

Итак, вам нужно написать код для этого. Что вы пробовали? Где вы застряли? И действительно ли у вас есть String с изображением карты Scala? Если это так, вы должны вернуться и попросить что-то более полезное (например, вы столкнетесь с трудностями, если какой-либо из ваших ключей или значений содержит кавычки или парсеры) –

+0

«Карта (металлы -> список (Cu, Co, Ni), Nonmetals -> List (N, O, C), Noblegases -> List (Ar, Kr)) 'a String или вы получаете фактическую карту? –

+0

@MateuszKubuszok это строка. –

ответ

0

Ваш вопрос не очень конкретный, поэтому мой ответ немного расплывчатый.

Сначала вам нужно проанализировать входную строку и извлечь значения. Я бы использовал комбинацию регулярных выражений и простых строковых операций, таких как поиск первого вхождения определенного символа (например, двоеточие) и разбиение там строки.

На следующем этапе вы создаете объект JSON. Есть несколько библиотек, которые вы можете использовать. Я предлагаю JSON-Java/org.json, или если вы хотите использовать библиотеку scala, вы можете использовать play-json.

Смежные вопросы