将文件写入节点js中的特定文件夹吗?

时间:2019-10-04 10:37:05

标签: node.js fs writefile

想使用节点js中的writefile将数据写入特定的文件夹。

我在stackoverflow中看到了几个与此有关的问题,但没有一个对我有用。

例如:

fs.writeFile('./niktoResults/result.txt', 'This is my text', function (err) {
    if (err) throw err;
    console.log('Results Received');
});

这将引发错误“没有文件或目录”

是否有将数据写入特定文件夹节点js的替代方法?

2 个答案:

答案 0 :(得分:1)

确保该目录在工作目录中可用且可访问。 在这种情况下,需要在应用程序的开头调用以下函数。

function initialize() {
  const exists = fs.existsSync('./niktoResults');
  if(exists === true) {
    return;
  }
  fs.mkdirSync('./niktoResults')
}

答案 1 :(得分:0)

由于目录不存在而导致的错误,如果目录不存在,请创建一个目录。

function create(text, directory, filename)
{
    if (!fs.existsSync(directory)) {
        fs.mkdirSync(directory);
        console.log('Directory created');
        create(text, directory);
    } else {
        fs.writeFile(`${directory}/${filename}`, `${text}`, function (error) {
            if (error) {
                throw error;
            } else {
                console.log('File created');
            }
        });
    }

}

create('Text', 'directory', 'filename.txt');