使用Nodejs异步将值的总和写入另一个文件

时间:2018-12-10 19:35:55

标签: node.js asynchronous fs

我有一个文件readData.txt,它的值是"10,20,30,40,50,........",像这样,我有数字。

现在,我想将这些值的总和写入另一个名为sumfile.txt的文件中。我正在使用异步的fs.readFile and fs.writeFile函数。

我已经尝试使用Promises,它确实有效。但是我很好奇,如果不使用Promises,我们可以做到这一点。我正试图在没有承诺的情况下实现这一目标。

如果有人知道其他方式,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以使用fs.readFile的回调参数:

fs.readFile('/etc/passwd', (err, data) => {
  if (err) throw err;
  console.log(data);
});

您可以使用fs.writeFile的回调参数:

const data = new Uint8Array(Buffer.from('Hello Node.js'));
fs.writeFile('message.txt', data, (err) => {
  if (err) throw err;
  console.log('The file has been saved!');
});

编辑

您也可以使用fs.readFileSync

同步执行此操作
fs.readFileSync('<directory>');

fs.writeFileSync

但是最好保持异步。起初很困难,但是所有的挣扎都会得到回报。