Как вывести все строки JSON в один вывод XML? Мой код выводит только первую строку JSON.
У меня есть файл данных, который содержит несколько строк JSON (CR & LF в конце каждой строки JSON):
{"valueName":"GPS_latitude","valueType":"-1","value":"39.26842508","objectID":"charger_80","timestamp":"1556841594000"}
{"valueName":"GPS_longitude","valueType":"-1","value":"-76.60410104","objectID":"charger_80","timestamp":"1556841594000"}
{"valueName":"GPS_altitude","valueType":"-1","value":"13","objectID":"charger_80","timestamp":"1556841594000"}
Мой Java-источник выглядит так:
import org.json.JSONObject;
import org.json.XML;
//Reads in the file and makes it one big string (which works correctly)
String jsonData = readFile("testfilePD.json");
//Converts the JSON string into XML but stops after first line.
String jsonBody = Convert_JSON_TO_XML.convert_json(jsonData); System.out.println(jsonBody);
//I'm using the XML library to convert
public static String convert_json(String json_value) {
String xml = "<node>";
try {
JSONObject jsoObject = new JSONObject(json_value);
xml = xml + XML.toString(jsoObject);
} catch (Exception e) {
System.out.println(e);
}
xml = xml + "</node>";
return xml;
}
Или есть ли лучшая библиотека для преобразования JSON в XML? Или как мне изменить библиотеку XML, чтобы прочитать весь мой файл и правильно вывести их в один большой файл XML. В конце концов я отправляю этот XML-файл в API веб-службы для приема внутрь. Я застрял.
Вывод должен быть примерно таким:
<?xml version="1.0"?>
<node>
<valueName>GPS_latitude</valueName>
<valueType>-1</valueType>
<value>39.26842508</value>
<objectID>charger_80</objectID>
<timestamp>1556841594000</timestamp>
</node>
<node>
<valueName>GPS_longitude</valueName>
<valueType>-1</valueType>
<value>-76.60410104</value>
<objectID>charger_80</objectID>
<timestamp>1556841594000</timestamp>
</node>