cómo dar una entrada de nombre de archivo en el analizador de bebé

Estoy tratando de usar el analizador de bebé para analizar el archivo csv pero obtengo un resultado inferior si doy el nombre del archivo

archivo y código están en el mismo directorio

mi código:

var Papa = require('babyparse'); var fs = require('fs'); var file = 'test.csv'; Papa.parse(file,{ step: function(row){ console.log("Row: ", row.data); } }); 

Fuera puesto

Fila: [[‘test.csv’]]

file debe ser un objeto de archivo: http://papaparse.com/docs#local-files . En nodejs, debe usar la API fs para cargar el contenido del archivo y luego pasarlo a PapaParse: https://nodejs.org/api/fs.html#fs_fs_readfilesync_filename_options

 var Papa = require('babyparse'); var fs = require('fs'); var file = 'test.csv'; var content = fs.readFileSync(file, { encoding: 'binary' }); Papa.parse(content, { step: function(row){ console.log("Row: ", row.data); } }); 

La opción de encoding es importante y establecerla en binario funciona para cualquier archivo de texto / csv, también podría establecerla en utf8 si su archivo está en Unicode.