gpt4 book ai didi

javascript - NodeJs : fs. 取消链接不会删除文件 [VS]

转载 作者:行者123 更新时间:2023-12-03 00:27:45 24 4
gpt4 key购买 nike

我知道这不是第一篇关于 fs.unlink 不起作用的帖子,但我对 Visual Studio 和 Node Js 都很陌生。

我想删除工作文件夹中的一个文件,但出现错误,并且该文件未删除。

这是我尝试过的:

var fs = require('fs');
fs.unlink('test1.txt');

PS:我在VS中安装了必要的Node Js组件。

最佳答案

就代码而言,您没有正确调用fs.unlink。对于初学者来说,它是异步的。您需要向其提供回调。请参阅此处的示例:

https://nodejs.org/api/fs.html#fs_fs_unlink_path_callback

其次,您需要为其提供完整的文件路径,而不仅仅是文件名......即:

var fs = require('fs');
fs.unlink('C:\path\to\my\file\test1.txt', (err) => {});

您还可以为其提供变量__dirname,以便从您对脚本调用 Node 的任何位置使用当前工作目录。因此,这看起来像:

let fs = require('fs');
let path = require('path');

fs.unlink(path.join(__dirname, 'test1.txt', (err) => {
if (err) throw err;
console.log('test1.txt was deleted');
});

目前,您还可以使用它的单个参数签名同步调用它...因此您只需提供目录路径:

fs.unlinkSync('C:\\path\\to\\my\\file\\test1.txt');

但是,这是不明智的,因为它会阻塞。我只会在某些应用程序引导过程中使用“同步”变体,在启动时它只会被调用一次左右。尝试抵制它“更容易”使用和理解的冲动,而是让自己理解异步逻辑。

关于javascript - NodeJs : fs. 取消链接不会删除文件 [VS],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54012417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com