2017-07-25 43 views
0

我使用Node csv-stringify包將對象列表轉換爲csv。節點csv-stringify格式時間戳列

其中一列包含時間戳,並且stringify方法將其轉換爲紀元日期。

1471388400000 

我怎樣才能保持輸出的原始時間戳格式:

var stringify = require('csv-stringify'); 

... 

input = [ 
{'field1':'val1', 'timemodified':'2016-08-16T23:00:00.000Z'}, 
... 
] 

stringify(input, function(err, output){ 
console.log(output); 
}) 

在輸出的timemodified被格式化?

我嘗試使用格式化選項,但它沒有任何效果: http://csv.adaltas.com/stringify/examples/

stringify(input, {formatters: { 
     "timemodified": function(value){ 
     return value.format("YYYY/MM/DD hh:mm:ss"); 
     } 
    }},function(err, output) { 
     fs.writeFile('userUpload.csv', output, 'utf8', function(err) { 
     if (err) { 
      console.log('Error - file either not saved or corrupted file saved.'); 
     } else { 
      console.log('userUpload.csv file saved!'); 
     } 
     }); 
    }); 

回答

0

我想你的代碼,而無需自定義格式,它按預期工作。輸出'val1,2016-08-16T23:00:00.000Z'。

但我得到的時間戳,如果我有個約會對象在我的輸入,如:

input = [ 
{'field1':'val1', 'timemodified': new Date('2016-08-16T23:00:00.000Z')}, 
... 
] 

請檢查是否有您輸入的日期對象。