Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.js Node csv模块-使用本地csv文件_Javascript_Node.js_Parsing - Fatal编程技术网

Javascript Node.js Node csv模块-使用本地csv文件

Javascript Node.js Node csv模块-使用本地csv文件,javascript,node.js,parsing,Javascript,Node.js,Parsing,我正在尝试使用新版本的节点csv节点模块来执行一些csv操作。 我过去使用过perl,但这次想尝试JavaScript。我不知道如何导入本地CSV文件而不是使用内置生成器。据我所知,node csv的文档没有说明如何做到这一点(尽管它为以前的版本提供了一个示例) 下面是示例代码,它按预期工作 var csv = require('csv'); var generator = csv.generate({seed: 1, columns: 2, length: 20}); var parse

我正在尝试使用新版本的节点csv节点模块来执行一些csv操作。

我过去使用过perl,但这次想尝试JavaScript。我不知道如何导入本地CSV文件而不是使用内置生成器。据我所知,node csv的文档没有说明如何做到这一点(尽管它为以前的版本提供了一个示例)

下面是示例代码,它按预期工作

var csv = require('csv');

var generator = csv.generate({seed: 1, columns: 2, length: 20});

var parser = csv.parse();
var transformer = csv.transform(function(data){
  return data.map(function(value){return value.toUpperCase()});
});
var stringifier = csv.stringify();

generator.on('readable', function(){
  while(data = generator.read()){
    parser.write(data);
  }
});

parser.on('readable', function(){
  while(data = parser.read()){
    transformer.write(data);
  }
});

transformer.on('readable', function(){
  while(data = transformer.read()){
    stringifier.write(data);
  }
});

stringifier.on('readable', function(){
  while(data = stringifier.read()){
    process.stdout.write(data);
  }
});
我计划使用FS模块,但不确定如何将本地文件传递到节点csv函数中

var fs = require('fs');
以下是上一版本的示例,该版本使用完全不同的语法:

// node samples/sample.js
var csv = require('csv');
var fs = require('fs');
csv()
.from.stream(fs.createReadStream(__dirname+'/sample.in'))
.to.path(__dirname+'/sample.out')
.transform( function(row){
  row.unshift(row.pop());
  return row;
})
.on('record', function(row,index){
  console.log('#'+index+' '+JSON.stringify(row));
})
.on('end', function(count){
  console.log('Number of lines: '+count);
})
.on('error', function(error){
  console.log(error.message);
});
有什么建议吗