writeFile 不创建文件

writeFile does not create file

错误代码如下:

{ Error: ENOENT: no such file or directory, open 'sad' errno: -2, code: 'ENOENT', syscall: 'open', path: 'sad' }

其中 'sad' 是我要写入的文件的名称,但它不存在。

代码如下所示:

fs.writeFile(filename, JSON_string, { flag: 'w' }, function(err){           
        if(err){
            return console.error(err);
        }           
        return JSON_string;
    });

还有其他类似的问题,但是他们的路径都是错误的,以/开头或不以/开头,我只是想从我运行这个node.js的地方写一个文件到root上application(也是在这个目录下用npm初始化的..)。

运行

sudo node server4.js

也不行。 将标志更改为 w+ 或 wx 或其他任何内容都无济于事。 如果文件存在,代码有效。

节点 v9+。

我需要使用 writeFile() 函数。

这对我有用,请检查这是否适用于您的系统:

var fs = require('fs')

fs.writeFile('./myfile.txt', 'Content to write', { flag: 'w' }, function(err) {
    if (err) 
        return console.error(err); 
    fs.readFile('./myfile.txt', 'utf-8', function (err, data) {
        if (err)
            return console.error(err);
        console.log(data);
    });
});

(除了写还要看确认)