CSV в XML - xmlBuilder - Проблема при создании списка XML - PullRequest
0 голосов
/ 18 марта 2019

Я желаю записать данные из CSV в файл XML. Пока все работает, за исключением того, что результат не на 100% правильный.

Вот выдержка из моего файла XML. Проблема в том, что список (ListValues) закрывается до того, как отдельные элементы перечислены.

    <ListValues/>
  <ListValue>
    <ListValueName>
      <![CDATA[XYZ]]>
    </ListValueName>
    <PClassName/>
    <PListName/>
    <PListValName/>
  </ListValue>

Вот мой JS (узел js с xmlbuilder-js)

 .on('end', () => {
        for (const key in results) {

            xml.ele('Name').cdata(key).up()
                .ele('Desc').up()
                .ele('Label').cdata(results[key][0].NAME).up()
                .ele('Prod').cdata('triItem').up()
                .ele('Type').up()
                .ele('ClassName').up()
                .ele('ObjectName').up()
                .ele('PClassName').up()
                .ele('PListname').up()
                .ele('ListValues');


            for (let index = 0; index < results[key].length; index++) {
                xml.ele('ListValue')
                    .ele('ListValueName').cdata(results[key][index].S_VALUE).up()
                    .ele('PClassName').up()
                    .ele('PListName').up()
                    .ele('PListValName').up();
            }

            xml.end({ pretty: true });

            var xmldoc = xml.toString({ pretty: true });

            fs.writeFile(__dirname + '/files/' + key + ".xml", xmldoc, function (error) {
                if (error) { return console.log(error); }
            });

Что мне нужно сделать, чтобы закрыть первый список по содержанию? Я не понимаю ... спасибо!

...