にNode.jsのCSVにデータを書き込む方法を見つけるのには苦労しています。Node.jsのCSVに書き込む
利用可能なCSVプラグインはいくつかありますが、標準出力には「書き込み」しかありません。 理想的には、ループを使用して行単位でベースに書きたいと思っています。
ありがとうございます。
にNode.jsのCSVにデータを書き込む方法を見つけるのには苦労しています。Node.jsのCSVに書き込む
利用可能なCSVプラグインはいくつかありますが、標準出力には「書き込み」しかありません。 理想的には、ループを使用して行単位でベースに書きたいと思っています。
ありがとうございます。
node-csv-parser
(npm install csv
)のドキュメントでは、特にストリームで使用できることが記載されています(fromStream
、toStream
参照)。したがって、stdoutを使用するのはハードコードされていません。
npm search csv
でも他のCSVパーサーがいくつか出てきます。あなたもそれを見たいかもしれません。
あなたが使用することができますFS(https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback):
var dataToWrite;
var fs = require('fs');
fs.writeFile('form-tracking/formList.csv', dataToWrite, 'utf8', function (err) {
if (err) {
console.log('Some error occured - file either not saved or corrupted file saved.');
} else{
console.log('It\'s saved!');
}
});
はここfs.writeFile
を使用してCSVファイルにメモリに収まるデータセットを書くことcsv-stringifyを使った簡単な例です。
import stringify from 'csv-stringify';
import fs from 'fs';
let data = [];
let columns = {
id: 'id',
name: 'Name'
};
for (var i = 0; i < 10; i++) {
data.push([i, 'Name ' + i]);
}
stringify(data, { header: true, columns: columns }, (err, output) => {
if (err) throw err;
fs.writeFile('my.csv', output, (err) => {
if (err) throw err;
console.log('my.csv saved.');
});
});
*「ただし、stdoutにのみ書き込みます」*実際には**驚くべきことです。書き込み可能な 'Stream'に書き込むことはありません。**は' stdout'に**していますか? –
テストしたモジュールへのリンクを含めることができますか? –
nodejを使ってCSVを生成するチュートリアルがあります。 http://programmerblog.net/generate-csv-using-nodejs/ –