Как преобразовать данные XML с атрибутами в формат JSONJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как преобразовать данные XML с атрибутами в формат JSON

Сообщение Anonymous »

Я использую этот метод для преобразования данных XML в JSON.

Код: Выделить всё

import org.json.XML;
import org.json.JSONObject;

class DataParserUtil
{
public JSONObject convertXMLToJson(String xml) {
JSONObject json = XML.toJSONObject(xml,true);
System.out.println(json.toString(2));
return json;
}
}
Этот метод возвращает JSONObject в класс Controller. Класс контроллера сохраняет данные JSONObject в HashMap и передает их клиентскому модулю.

Код: Выделить всё

Map response = new HashMap();
...
JSONObject xmlResult = jsonConversionService.convertXMLToJson(data);
response.put("Data", xmlResult.toMap());
...
ActionContext.getContext().put("jsonResponse", response);
действительно эффективен для большинства данных XML. Но это немного дает сбой, когда дело касается XML-данных с атрибутами.
Для этого примера входных данных — Джон
Я понимаю почти правильно, за исключением того, что @type отображается как тип.
Ожидаемый Вывод:

Код: Выделить всё

{ "data" :
{ "root" :
{ "@type" : "student",
"name" : "John"
}}}
Вывод (я получаю):

Код: Выделить всё

{ "data" :
{ "root" :
{
"type" : "student",
"name" : "John"
}}}
Что мне следует изменить в своем коде, чтобы привести его в правильный формат?

Подробнее здесь: https://stackoverflow.com/questions/795 ... son-format
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»