Node.js中的数据转换,最佳实践?

时间:2017-01-17 15:17:49

标签: javascript java node.js xml

我需要将各种消息格式转换为JSON和v.v.,例如XML到JSON,然后是JSON到XML或EDI到JSON和JSON到EDI。

我已经查看了几个不同的XML-to-JSON模块,它们似乎主要是直接转换为自己的JSON和/或XML格式,而不是我所需的XML(例如UBL 2.1)。 / p>

一种简单直接的方法是使用String变量:

let myXML = '<root><hdr>' + jsonIn.hdr + '</hdr>\r\n';
myXML += '<itm>' + jsonIn.item[0] + '</hdr></root>';

myXML变量虽然很大。目前高达200 kB,但未来可能会变大。

显然,这是创建出站格式的最快捷,最简单的方法,但创建一个庞大的字符串变量并不是真的感觉......

在Java中,我使用StringBuilder并且节点有一个npm:https://www.npmjs.com/package/stringbuilder

您会采用哪种方法来考虑最佳实践&#34;接近?

1 个答案:

答案 0 :(得分:0)

  

在Java中,我使用StringBuilder ...

如果是这种情况,那么你最终需要以包含结果的单个字符串结束,一个相当正常的模式是在数组中构建单个字符串,然后在.Net时使用Array#join你完成了一个最后的大字符串:

let myXML = [];
myXML.push('<root><hdr>' + jsonIn.hdr + '</hdr>\r\n');
myXML.push('<itm>' + jsonIn.item[0] + '</hdr></root>');
// ...

// When you're ready for the big string:
myXML = myXML.join("");

如果你最后不需要一个大字符串,但是正在写一个文件等,那么随你写一个很好的解决方案。