2016-06-14 2 views
0

Скажем, у меня есть куча строк в формате JSONСоединить строки JSON в объект JSON в Java

1. {"Name": Bob"} 
2. {"Age" : 14} 
3. {"address": "221 Baker street"} 

Есть ли способ, что я могу сцепить строки JSON и создать объект JSON в конце концов? т.е.

output -> {"Name": "Bob", "Age": 14, "Address": "221 Baker Street"} 

Я знаю, что могу разобрать каждую строку и заменить «}» с запятой, и что будет работать, но мне было интересно, есть ли встроенный способ сделать это

Спасибо!

+0

Что должно быть поведение, если вы объединения '{ "Name": "Боб"}' и '[10]'? –

+0

все входящие объекты json string должны иметь формат ключа: пара значений. (это проверка для этого раньше). – Akshay

+0

У Android есть (примитивная) встроенная библиотека JSON, но если вы используете обычную Java, вам нужно [импортировать библиотеку JSON] (http://stackoverflow.com/questions/2591098/how-to- разобрать-JSON-в-Java). – shmosel

ответ

1

Если у вас есть Джексона на вашем пути к классам,

ObjectMapper mapper = new ObjectMapper(); 
Map<Object, Object> result = new HashMap<>(); 
result.putAll(mapper.readValue("{\"Name\": \"Bob\"}", Map.class)); 
result.putAll(mapper.readValue("{\"Age\": 14}", Map.class)); 
result.putAll(mapper.readValue("{\"address\": \"221 Baker street\"}", Map.class)); 
String concatenated = mapper.writeValueAsString(result); 
Смежные вопросы