English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Чтобы удалить файл в Node.js, можно использовать асинхронную операцию с помощью функции Node.js FS unlink(path, callback), а также можно использовать unlinkSync(path) для синхронной операции. В этом руководстве по Node.js приведена пошаговая инструкция по удалению файла с использованием модуля fs и примерами.
Ниже приведена пошаговая инструкция по удалению файла программным способом в Node.js:
Шаг 1: включите модуль файловой системы в ваш сценарий Node.js
var fs = require('fs()); |
Мы будем использовать этот модуль unlink() и его функцию unlinkSync().
Шаг 2: использование функции unlink() для асинхронного удаления файла. Ниже приведен синтаксис:
fs.unlink(filePath, callbackFunction) |
После попытки удаления файла, функция обратного вызова будет вызвана с ошибкой (в качестве параметра) (если есть).
Чтобы синхронно удалить файл, используйте функцию unlinkSync(). Ниже приведена синтаксис:
fs.unlinkSync(filePath) |
Где:filePath — это строка, которая указывает на путь к файлу, который нужно удалить.
Для этого примера убедитесь, что рядом с примером программы node.js есть файл с именем «sample.txt».
Создайте следующий сценарий Node.js, deleteFile.js, чтобы удалить файл из Node.js.
// 引入文件fs模块 var fs = require('fs'); // 删除名为“sample.txt”的文件 fs.unlink('sample.txt', function(err) { if (err) throw err; // 如果没有错误,则文件已成功删除 console.log('文件已删除!'); });
在终端或命令提示符下使用node命令运行程序。
终端输出
$ node deleteFile.js 文件已删除!
文件已成功删除。
创建以下Node.js程序以同步删除Node.js中的文件。如果删除操作旁边的语句依赖于所删除的文件,这将非常有用。unlinkSync()函数确保在执行后续语句之前删除该文件(如果存在)。
// 引入文件fs模块 var fs = require('fs'); // 同步删除名为“sample.txt”的文件 fs.unlinkSync('sample.txt'); console.log('文件已删除!');
在终端或命令提示符下使用node命令运行程序。
终端输出
$ node deleteFileSynchronously.js 文件已删除!
文件已成功删除。
对于此示例,请确保在node.js示例程序旁边没有名为“sample11.txt”的文件。我们将模拟条件,试图删除该位置不存在的文件。
// 引入文件fs模块 var fs = require('fs'); // 删除名为“sample.txt”的文件 fs.unlink('sample11.txt', function(err) { if (err) throw err; // 如果没有错误,则文件已成功删除 console.log('文件已删除!'); });
在终端或命令提示符下使用node命令运行程序。
终端输出
$ node deleteFile2.js /home/arjun/workspace/nodejs/deleteFile2.js:6 if (err) throw err; ^ 错误:ENOENT:没有这样的文件或目录,删除'sample11.txt'
由于文件不存在,将引发错误,提示“无此文件或目录”。
在本Node.js教程- Node FS结束之前,我们学习了如何使用Node FS(文件系统)内置模块删除Node.js中的文件。