首页 > 解决方案 > Pentaho 数据集成 - 将 javascript JSON 修改为文件

问题描述

我有带有输入数据的 csv 文件:

product;weight;price
"My Product";25;12.99
"Second Product";278;45.45
"third Product";478;64.33

目标是获取带有 json-data 的文件:

[{
   "product": "My Product",
   "weight" : 25,
   "price"  : {
      "scale" : 2,
      "sign"  : "EUR",
      "value" : 12.99
   }
 },
 {
   "product": "Second Product",
   "weight" : 278,
   "price"  : {
      "scale" : 2,
      "sign"  : "EUR",
      "value" : 45.45
   }
 },
 {
   "product": "third Product",
   "weight" : 478,
   "price"  : {
      "scale" : 2,
      "sign"  : "EUR",
      "value" : 64.33
   }
 }
]

json-output 我不能用,因为是多维json(价格)。所以我做了:

CSV 文件输入 -> 修改后的 JavaScript 值 -> 文本文件输出

Javascript 看起来像这样:

var json = [];

json.push({
    "product": product,
    "weight": wight,
    "price": {
      "scale": 2,
      "sign": "EUR",
      "value": price
    }
});

var output = JSON.stringify(json);

现在我的文本文件看起来像这样

[{"product": "My Product","weight": 25,"price": {"scale": 2,"sign": "EUR","value": 12.99}}]
[{"product": "Second Product","weight": 278,"price": {"scale": 2,"sign": "EUR","value": 45.45}}]
[{"product": "third Product","weight": 478,"price": {"scale": 2,"sign": "EUR","value": 64.33}}]

我能做些什么来获得一个包含所有对象的数组?

标签: jsonpentaho-data-integrationpdi

解决方案


推荐阅读