Как создать файл .xls / .xlsx со значениями csv из входящего xml, используя отображение Java - PullRequest
0 голосов
/ 27 июня 2019

Я использую DOM Parser для анализа входного xml, как показано ниже, а затем устанавливаю значение в соответствующих ячейках Excel.

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder();

Document document = builder.parse(inputstream); 
NodeList nodelist = document.getElementsByTagName("ExchangeRate");

Пожалуйста, дайте мне знать, как добавить; между различными значениями, извлеченными из XML.

HSSFRow row1 = ITSFX.createRow(1);

cell = row1.createCell((short) 0);

cell.setCellValue(((Element) (nodelist.item(0))).getElementsByTagName("CurrencyFrom").item(0). getFirstChild() .getNodeValue());

Здесь я получаю первое значение, полученное из xml, то есть в данном случае EUR.

Теперь мне нужно добавить второе значение из xml в той же ячейке [1,0] с точкой с запятой в качестве разделителя. inputXML

Ввод Xml

<?xml version="1.0" encoding="UTF-8"?>
<incmstmts>

<ExchangeRate>
<CurrencyFrom>EUR</CurrencyFrom>
<CurrencyTo>AUD</CurrencyTo>
<Date>30.04.2019</Date>
<ConversionType>1</ConversionType>
<Value>5911</Value>
</ExchangeRate>

<ExchangeRate>
<CurrencyFrom>EUR</CurrencyFrom>
<CurrencyTo>BRL</CurrencyTo>
<Date>30.04.2019</Date>
<ConversionType>1</ConversionType>
<Value>405</Value>
</ExchangeRate>

<ExchangeRate>
<CurrencyFrom>EUR</CurrencyFrom>
<CurrencyTo>BGN</CurrencyTo>
<Date>30.04.2019</Date>
<ConversionType>1</ConversionType>
<Value>9558</Value>
</ExchangeRate>

</incmstmts>

Требуется вывод в Excel .xls / .xlsx

EUR; AUD; 30.04.2019; 1 5911
EUR; BRL; 30.04.2019; 4 405

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...