如何逐个将json数据添加到csv文件中?
我需要从开始到结束开始将json数据添加到csv文件。但每一行都会每分钟添加一行。在我的情况下,它在第一分钟就添加了所有这些内容。这是我的代码。
var unirest = require('unirest');
var fs = require('fs');
var outFilename = 'mert_akel_minutereadings.csv';
var interval = setInterval(function () { post(); }, 60000); //Write to file every minute
function post(){
unirest.post('')
.headers({'Accept': 'application/json', 'appKey': 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'})
.end(function (response) {
writeToCsv(response.body);
});
}
function writeToCsv(inJSON){
var outCSV = inJSON.rows;
// console.log(outCSV)
var csv = [];
for(var k in outCSV) {
var items = [[outCSV[k].PowerPlant , outCSV[k].gen1min , outCSV[k].gen1minDateTime, timeConverter(outCSV[k].gen1minDateTime)]];
for (index = 0; index < items.length; ++index) {
csv.push(items[index].join(', ') + '\n');
}
fs.writeFile(outFilename, csv, function (err) {
if (err) {
return console.log(err);
}
console.log("Added one row!")
});
}
}
function timeConverter(UNIX_timestamp){
var a = new Date(UNIX_timestamp*1000);
var hour = a.getUTCHours();
var min = a.getUTCMinutes();
var sec = a.getUTCSeconds();
var time = hour+':'+min+':'+sec ;
return time;
}
如果有人可以提供帮助,我将不胜感激。
回答如下: