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

Posted

技术标签:

【中文标题】将文件写入节点js中的特定文件夹?【英文标题】:Write a file into specific folder in node js? 【发布时间】:2020-02-02 16:39:11 【问题描述】:

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

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

例如:

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

这会引发错误“没有这样的文件或目录”

有没有其他方法可以将数据写入特定文件夹节点 js ???

【问题讨论】:

首先,我建议使用__dirname 而不是./ 前缀。其次,可能niktoResults 目录不存在。检查此线程以了解如何验证目录存在 ***.com/questions/21194934/… 所以如果文件夹不存在节点就不会创建文件夹 【参考方案1】:

确保该目录在工作目录中可用且可访问。 在这种情况下,需要在应用程序启动时调用如下函数。

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

【讨论】:

【参考方案2】:

目录不存在导致的错误,如果目录不存在则创建一个目录。

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');

【讨论】:

以上是关于将文件写入节点js中的特定文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

如何将文件写入 NodeJS 中的特定目录?

EPERM 阻止的文件写入权限 - 删除然后写入新文件。节点.js

python 如何将数据写入某个csv文件的特定位置?

以特定格式将“字典中的字典”写入 .csv 文件

将数组写入 .hex 文件中的特定闪存位置

如何使用 fast-csv 将特殊字符写入节点中的 csv 文件