cómo importar un archivo csv a mysql usando node.js?
load csv node js (1)
En este momento estoy intentando con la biblioteca fast-csv hacer esto:
var stream = fs.createReadStream("./google.csv");
csv
.fromStream(stream, {headers : ["Name","E-mail 1 - Value"], ignoreEmpty: true})
.on("data", function(data){
console.log(data);
})
.on("end", function(){
console.log("done");
});
Pero arroja este error: "desacuerdo del encabezado de columna esperado: 2 columnas obtuvieron: 57"
¿Sabes cómo puedo evitar eso? debería usar una biblioteca / enfoque diferente
Otro problema al que me enfrento es que obtengo el resultado en hexadecimal ... ¿cómo puedo analizarlo correctamente?
Puede usar el módulo de nodo ''csv-parse''.
- lea el archivo csv usando el módulo ''fs'' del nodo
- pasa los datos al analizador csv y obtendrás arry of array, donde la matriz interna representa cada fila.
Eche un vistazo al siguiente código.
var csvParser = require(''csv-parse'');
fs.readFile(filePath, {
encoding: ''utf-8''
}, function(err, csvData) {
if (err) {
console.log(err);
}
csvParser(csvData, {
delimiter: '',''
}, function(err, data) {
if (err) {
console.log(err);
} else {
console.log(data);
}
});
});
Aquí filePath es la ruta del archivo csv y el delimitador será según su archivo. Es el personaje que separa los campos en el archivo csv (puede ser '','', ''.'', Etc.).