2015-10-26 24 views
-2

我想找到一種方法將一系列存儲在CSV文件中的表格數據轉換爲XML,通常使用node.js或JavaScript,我不知道從哪裏開始。將表格數據轉換爲node.js中的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顯示不包括在原始數據的一些額外的標籤,但是轉換數據的主體是我的問題。

+0

解析CSV數據:https://github.com/wdavidw/node-csv生成XML:https://開頭github上。 com/dylang/node-xml –

+0

@Oleg感謝您的編輯......一個值得一提的是,我真正需要的唯一信息是FPNxxxxx ...和PCNxxxxx ...列出了xml文件的其他元素由應用程序生成,並且該列表需要訂購 – reguia

回答

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); 
+0

如何讀取第三列中的值並將其添加到XML? – reguia

+0

@reguia像上面提到的那樣使用csv解析器。 –