这是这个问题的副本here
这是我正在尝试使用的代码:
let Client = require('ssh2-sftp-client');
let sftp = new Client();
var csv = require("csvtojson");
sftp.connect({
host: 'HOST',
port: 'PORT',
username: 'USERNAME',
password: 'PASSWORD'
}).then(() => {
return sftp.get('/home/user/etc/testfile.csv');
}).then((data) => {
csv()
.fromString(data.toString()) // changed this from .fromStream(data)
.subscribe(function(jsonObj) { //single json object will be emitted for each csv line
// parse each json asynchronously
return new Promise(function(resolve, reject) {
resolve()
console.log(jsonObj);
})
})
}).catch((err) => {
console.log(err, 'catch error');
});
我可以读回 CSV 数据,并且可以在 console.log(jsonObj) 上看到它进入 JSON 格式,但数据不可读,全部为 '\x00o\x00n\x00'' ..
我不知道该做什么://异步解析每个json
任何人都可以帮助弄清楚从缓冲区返回后如何解析 CSV/JSON 吗?