首页 > 解决方案 > 识别、读取和写入目录中的多个文本文件时出错 ENOENT 错误

问题描述

我在桌面上有名为“Main”的文件夹,其中有两个名为“Input”和“Output”的文件夹。这些文件夹是手动创建的(右键单击新建文件夹)。名为 Verification.js 的脚本位于名为“Input”和“Output”文件夹的文件夹之外以及“Main”文件夹内。该脚本读取“输入”文件夹中的多个文本文件,运行所有文本文件的逻辑,将更新的文本文件写入“输出”文件夹。

到目前为止,我在 Verification.js 脚本中更新的程序如下:

var fs = require('fs')

fs.readdir('Input', (err, files) => {
  if (err) {
      //debugger;
    console.log(err);
    return;
  }
  files.forEach(file => {
    fs.readFile(file, 'utf8', function (err,result) {
      if (err) {
          return console.log(err);
      }
      result = //logic;

      fs.writeFile('Output',result,'utf8', function (err) {
        if (err) {
          return console.log(err);
        }
      });
  });
});



});

我收到以下错误:它无法识别文本文件。

C:\Users\eva>cd C:\Users\eva\Desktop\Main

C:\Users\Eva\Desktop\Main>node Verification.js

{ [Error: ENOENT: no such file or directory, open 'C:\Users\Eva\Desktop\Main\TestFile1.txt']
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path:
   'C:\\Users\\Eva\\Desktop\\Main\\TestFile1.txt' }
{ [Error: ENOENT: no such file or directory, open 'C:\Users\tjadhav\Desktop\Main\TestFile2.txt']
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path:
   'C:\\Users\\Eva\\Desktop\\Main\\TestFile2.txt' }

我该如何纠正它?如错误所示,它无法识别“路径”属性中的输入文件夹以及文本文件。

标签: javascriptnode.jsnode-modulessynchronous

解决方案


推荐阅读