我是能够阅读并获取数据的文件,现在我想覆盖文件内容,但我在下面尝试的内容并不起作用我错过了什么?
var str = "t123";
fs.writeFile('C:\\test.txt',str,'utf8',{'flags': 'a+'},function(){
fs.readFile('C:\\test.txt', 'utf8', function (err,data) {
console.log(data === str)
res.send(data);
});
});
我验证该文件不是只读的... 当我把错误我得到以下但文件已关闭...
Error: EPERM, open 'C:\test.txt'
答案 0 :(得分:1)
答案:此文件的权限错误C:\ test.txt以管理员身份运行此文件。
我刚试过下面提到的代码,它工作正常。 test.txt和write.js在同一目录中。
// write.js
var fs = require('fs');
var str = "this is my new text";
fs.writeFile('test.txt',str,'utf8',{'flags': 'a+'},function(){
fs.readFile('test.txt', 'utf8', function (err,data) {
console.log(data === str)
});
});
OUTPUT: true
答案 1 :(得分:-1)
它看起来像是一个权限错误。在使用nodemon运行服务器之前,以管理员身份打开命令提示符。 (应OP要求将评论移至答案部分)