将表格数据转换为node.js中的XML

时间:2015-10-26 23:37:26

标签: xml node.js parsing csv

我想找到一种方法,使用node.js或JavaScript将存储在CSV文件中的一系列表格数据转换为XML,我不知道从哪里开始。

原始数据文件如下所示:

2009-11-11 13:57:48|NOVAL|FPNxxx1B40000034|1|1|DATA001XE0OP|NOVAL
2009-11-11 13:57:48|NOVAL|FPNxxx1B40000034S|3|2|DATA001XE0OP|NOVAL 
2009-11-11 13:57:48|NOVAL|PCNxxx1B40000812|24|2|DATA001XE0OP|NOVAL

所需的输出:

<SYSTEM>
<PARENT scanned="FPNxxx1B40000034">
    <PARTNO>PNxxx1B4</PARTNO>
    <CLIENT>CLIENT_NAME</CLIENT>
    <SIDE no="1" parentcode="FPNxxx1B40000034">
        <child code="PCNxxx1B40000793" pos="1" side="1" counterindex="1" state="1" />
        <child code="PCNxxx1B40000794" pos="2" side="1" counterindex="2" state="1" />
        <child code="PCNxxx1B40000795" pos="3" side="1" counterindex="3" state="1" />
    </SIDE>
</PARENT>

我意识到示例XML显示了原始数据中未包含的一些额外标签,但转换数据的主体是我的问题。

1 个答案:

答案 0 :(得分:0)

阅读你的csv,解析它并使用像xmlbuilder之类的东西来构建xml

var obj = {
  person: {
    name: "John",
    '@age': 35,
    address: {
      city: "Istanbul"
    },
    '#list': [
      { phone: { '#text': "555-1234", '@type': 'home' } }, 
      { phone: { '#text': "555-1235", '@type': 'mobile' } }
    ],
    id: function() {
      return 42;
    }
  }
};

var builder = require('xmlbuilder');
var root = builder.create(obj);