使用node.js csv模块从mongodb生成csv文件

时间:2014-02-27 08:30:02

标签: node.js mongodb csv

我需要更好地控制数据如何输出到csv,所以我不能使用mongoexport。我想一次读一个mongodb文档并在文件中写入csv格式化的行。如果有人能指出我正确的方向,那将会很有帮助。如果我在编写csv值时需要考虑的是转义双引号,我可能只需要写出该行而不需要csv模块。主要关注csv创建部分。

1 个答案:

答案 0 :(得分:3)

你可以使用一些javascript(加载或不加载任何外部JavaScript库)。

例如。 myCsvWriter.js

db.myCollectionName.find(SOME_CONDITIONS).forEach(
   function(doc)
   {
      docId = doc._id;
      docName = doc.name;
      print('"" + docId + '","' + docName + '"');
   }

);

要运行的命令:

mongo --quiet myDatabaseName myCsvWriter.js  >  /tmp/myOutput.csv

您必须编写自定义Javascript以通过转义分隔符并引用值来正确创建CSV字符串,或者您还可以在mongo shell中加载一些javascript csv库并使用它。