我试图将数据写入.txt文件。 但是发生了未处理的承诺异常。
我已经在file.writeFileSyn
中添加了err语句,但这似乎毫无用处。
如何将承诺部分添加到f ile.writeFileSync
中?
let file = fs
.createWriteStream('depositeOrder.txt')
.on('error', function(err) {
console.log('[Writing error] : ' + err);
});
for (let content of readResult.entries()) {
file.writeFileSync(content[0] + '|' + content[1], err => {
console.log('We have an writing error');
if (err) {
console.error(err);
return;
}
});
}
file.end();
这是我收到的错误消息
(节点:21713)UnhandledPromiseRejectionWarning:TypeError: file.writeFileSync不是函数 在getDeposite(/Users/jinwoopark/exkr-fds-service-2/apps/MonitorKrwDeposite.js:144:18) 在process._tickCallback(内部/进程/next_tick.js:68:7)warning.js:18(node:21713)UnhandledPromiseRejectionWarning:未处理 承诺拒绝。此错误是由以下原因引起的: 一个没有catch块的异步函数,或者通过拒绝一个Promise 无法使用.catch()处理。 (拒绝ID:1)
答案 0 :(得分:0)
我认为解决此问题的最佳方法是记住您正在使用createWriteStream函数创建文件流。它不存在writeFileSync方法。
也许尝试以下代码:
let fileStream = fs
.createWriteStream('depositeOrder.txt')
.on('error', function(err) {
console.error('[Writing error] : ' + err);
});
for (let content of readResult.entries()) {
fileStream.write(content[0] + '|' + content[1] + '\n');
}
fileStream.end();