我正在尝试使用nodejs中的csvtojson转换器将csv文件转换为json。我的代码如下所示。
我得到如下所示的数据输出。我不确定为什么会这样以及如何防止它。

var Converter  = require("csvtojson").Converter;
var fileStream = fs.createReadStream("input.csv");

var converter = new Converter({constructResult:false});

converter.on("end_parsed", function (jsonObj) {
  var jsonfile = require('jsonfile');
  var file     = 'output.json';
  jsonfile.writeFile(file, jsonObj, function (err) { console.error(err); });});


fileStream.pipe(converter);

{“��P\ u0000a \ u0000c \ u0000k \ u0000a \ u0000g \ u0000e \ u0000 \ u0000N \ u0000a \ u0000m \ u0000e \ u0000“:” \ u0000c \ u0000o \ u0000m \ u0000。\ u0000t \ u0000r \ u0000i \ u0000n \ u0000e \ u0000t \ u0000。\ u0000h \ u0000r \ u0000p \ u0000m \ u0000o \ u0000b \ u0000i \ u0000l \ u0000e \ u0000“,” \ u0000A \ u0000p \ u0000p \ u0000 \ u0000V \ u0000e \ u0000r \ u0000s \ u0000i \ u0000o \ u0000n \ u0000 \ u0000C \ u0000o \ u0000d \ u0000e \ u0000“:” \ u00006 \ u00002 \ u0000“,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000e \ u0000r \ u0000 \ u0000L \ u0000a \ u0000n \ u0000g \ u0000u \ u0000a \ u0000g \ u0000e \ u0000“:” \ u0000e \ u0000n \ u0000“,” \ u0000D \ u0000e \ u0000v \ u0000i \ u0000c \ u0000e \ u0000“:” \ u0000“,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000S \ u0000u \ u0000b \ u0000m \ u0000i \ u0000t \ u0000 \ u0000D \ u0000a \ u0000t \ u0000e \ u0000 \ u0000a \ u0000n \ u0000d \ u0000d \ u0000 \ u0000T \ u0000i \ u0000m \ u0000e u0000”:“\ u00002 \ u00000 \ u00001 \ u00005 \ u0000- \ u00001 \ u00002 \ u0000- \ u00002 \ u00002 \ u0000T \ u00000 \ u00003 \ u0000:\ u00003 \ u00002 \ u0000:\ u00003 \ u00008 \ u0000Z \ u0000 “,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000S \ u 0000u \ u0000b \ u0000m \ u0000i \ u0000t \ u0000 \ u0000M \ u0000i \ u0000l \ u0000l \ u0000i \ u0000s \ u0000s \ u0000S \ u0000S \ u0000i \ u0000n \ u0000c \ u0000e \ u0000 \ u0000E \ u0000E \ u0000p \ u0000o \ u0000c \ u0000h \ u0000 :“\ u00001 \ u00004 \ u00005 \ u00000 \ u00007 \ u00005 \ u00005 \ u00001 \ u00005 \ u00008 \ u00002 \ u00006 \ u00002 \ u0000“,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000L \ u0000a \ u0000s \ u0000t \ u0000 \ u0000U \ u0000p \ u0000d \ u0000a \ u0000t \ u0000e \ u0000 \ u0000D \ u0000a \ u0000t \ u0000e \ u0000 \ u0000a \ u0000n \ u0000d \ u0000 \ u0000 \ u0000T \ u0000i \ u0000m \ u0000e \ u0000“:“\ u00002 \ u00000 \ u00001 \ u00005 \ u0000- \ u00001 \ u00002 \ u0000- \ u00002 \ u00002 \ u0000T \ u00000 \ u00003 \ u0000:\ u00003 \ u00002 \ u0000:\ u00003 \ u00008 \ u0000Z \ u0000“, “\ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000L \ u0000a \ u0000s \ u0000t \ u0000 \ u0000U \ u0000p \ u0000d \ u0000a \ u0000t \ u0000e \ u0000e \ u0000 \ u0000M \ u0000i \ u0000l \ u0000l \ u0000i \ u0000s \ u0000 \ u0000S \ u0000i \ u0000n \ u0000c \ u0000e \ u0000 \ u0000E \ u0000p \ u0000o \ u0000c \ u0000h \ u0000“:” \ u00001 \ u00004 \ u00005 \ u00000 \ u00007 \ u00005 \ u00005 \ u00001 \ u00005 \ u00008 \ u000 02 \ u00006 \ u00002 \ u0000“,” \ u0000S \ u0000t \ u0000a \ u0000r \ u0000 \ u0000R \ u0000a \ u0000t \ u0000i \ u0000n \ u0000g \ u0000“:” \ u00005 \ u0000“,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000T \ u0000i \ u0000t \ u0000l \ u0000e \ u0000“:” \ u0000“,” \ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000w \ u0000 \ u0000T \ u0000T \ u0000e \ u0000x \ u0000t \ u0000“:” \ u0000“,” \ u0000D \ u0000e \ u0000v \ u0000e \ u0000l \ u0000o \ u0000p \ u0000e \ u0000r \ u0000 \ u0000R \ u0000e \ u0000p \ u0000l \ u0000y \ u0000 \ u0000D \ u0000D \ u0000a \ u0000t \ u0000e \ u0000 \ u0000a \ u0000n \ u0000d \ u0000 \ u0000T \ u0000i \ u0000m \ u0000e \ u0000“:” \ u0000“,” \ u0000D \ u0000e \ u0000v \ u0000e \ u0000l \ u0000o \ u0000p \ u0000e \ u0000e \ u0000r \ u0000 \ u0000R \ u0000e \ u0000p \ u0000l \ u0000y \ u0000 \ u0000M \ u0000i \ u0000l \ u0000l \ u0000i \ u0000s \ u0000s \ u0000S \ u0000S \ u0000i \ u0000n \ u0000c \ u0000e \ u0000 \ u0000E \ u0000p \ u0000p \ u0000o \ u0000c \ u0000h \ u0000是“\ u0000”,“\ u0000D \ u0000e \ u0000v \ u0000e \ u0000l \ u0000o \ u0000p \ u0000e \ u0000r \ u0000 \ u0000R \ u0000e \ u0000p \ u0000l \ u0000y \ u0000 \ u0000T \ u0000e \ u0000e \ u0000x \ u0000t \ u0000” “\ u0000”,“\ u0000R \ u0000e \ u0000v \ u0000i \ u0000e \ u0000 w \ u0000 \ u0000L \ u0000i \ u0000n \ u0000k \ u0000“:” \ u0000“},
{“��P\ u0000a \ u0000c \ u0000k \ u0000a \ u0000g \ u0000e \ u0000 \ u0000N \ u0000a \ u0000m \ u0000e \ u0000”:“\ u0000”}

最佳答案

我解决了这个问题:这是一个编码问题:正确的代码是“utf16”

   var csvEncoding = { encoding: 'utf16le' };
    var csvString = fs.readFileSync(csvfile, csvEncoding).toString();
    converter.fromString(csvString, function(err,result){
    //your code here console.log(err);
    console.log(result);

});

关于javascript - 使用Nodejs进行csvtojson转换会产生乱码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35932878/

10-09 14:32