nœud.js supprimer le fichier
Comment supprimer un fichier avec noeud.js?
http://nodejs.org/api/fs.html#fs_fs_rename_oldpath_newpath_callback
Je ne vois pas de commande Supprimer?
12 réponses
vous pouvez appeler fs.unlink(path, callback)
pour unlink asynchrone(2) ou fs.unlinkSync(path)
pour unlink synchrone(2).
Où path
est file-path que vous voulez supprimer.
par exemple, nous voulons supprimer le fichier discovery.docx
du répertoire c:/book
. Donc mon chemin de fichier est c:/book/discovery.docx
. Donc le code pour supprimer ce fichier sera,
var fs = require('fs');
var filePath = 'c:/book/discovery.docx';
fs.unlinkSync(filePath);
si vous voulez vérifier le fichier avant de supprimer s'il existe ou non. Donc, utilisez fs.stat ou fs.statSync ( synchrone ) au lieu de fs.exists
. Parce que d'après le dernier nœud.js documentation , fs.exists
maintenant obsolète .
par exemple: -
fs.stat('./server/upload/my.csv', function (err, stats) {
console.log(stats);//here we got all information of file in stats variable
if (err) {
return console.error(err);
}
fs.unlink('./server/upload/my.csv',function(err){
if(err) return console.log(err);
console.log('file deleted successfully');
});
});
est Ici un petit extrait de j'ai fait à cette fin,
var fs = require('fs');
var gutil = require('gulp-util');
fs.exists('./www/index.html', function(exists) {
if(exists) {
//Show in green
console.log(gutil.colors.green('File exists. Deleting now ...'));
fs.unlink('./www/index.html');
} else {
//Show in red
console.log(gutil.colors.red('File not found, so not deleting.'));
}
});
Je ne pense pas que vous devez vérifier si le fichier existe ou non, fs.unlink
le vérifiera pour vous.
fs.unlink('fileToBeRemoved', function(err) {
if(err && err.code == 'ENOENT') {
// file doens't exist
console.info("File doesn't exist, won't remove it.");
} else if (err) {
// other errors, e.g. maybe we don't have enough permission
console.error("Error occurred while trying to remove file");
} else {
console.info(`removed`);
}
});
comme réponse acceptée, utilisez fs.unlink
pour supprimer les fichiers.
mais selon noeud.js documentation
utiliser
fs.stat()
pour vérifier l'existence d'un fichier avant d'appelerfs.open()
,fs.readFile()
oufs.writeFile()
n'est pas recommandé. Le code utilisateur devrait plutôt ouvrir/lire / écrire le fichier directement et gérer l'erreur soulevée si le fichier n'est pas disponible.Pour vérifier si un fichier existe sans le manipuler par la suite,
fs.access()
est recommandé.
pour vérifier les fichiers peuvent être supprimés ou non, utilisez fs.access
à la place
fs.access('/etc/passwd', fs.constants.R_OK | fs.constants.W_OK, (err) => {
console.log(err ? 'no access!' : 'can read/write');
});
vous pouvez utiliser del module pour supprimer un ou plusieurs fichiers dans le répertoire courant. ce qui est agréable, c'est que cela vous protège contre la suppression du répertoire de travail courant et au-dessus.
const del = require('del');
del(['<your pathere here>/*']).then( (paths: any) => {
console.log('Deleted files and folders:\n', paths.join('\n'));
});
ici sous mon code qui fonctionne très bien.
fs.unlink(__dirname+ '/test.txt', function (err) {
if (err) {
console.error(err);
}
console.log('File has been Deleted');
});
Use npm module fs-extra , qui vous donne tout en fs, plus tout est promis. En prime, il y a un fs.supprimer () la méthode disponible.
vous pouvez utiliser fs.unlink(chemin d'accès, callback) de la fonction. Voici un exemple de la fonction wrapper avec "erreur" modèle:
// Dependencies.
const fs = require('fs');
// Delete a file.
const deleteFile = (filePath, callback) => {
// Unlink the file.
fs.unlink(filePath, (error) => {
if (!error) {
callback(false);
} else {
callback('Error deleting the file');
}
})
};
supprime les fichiers du répertoire qui correspondent à regexp pour le nom de fichier. Utilisé seulement fs.unlink - pour supprimer le fichier, fs.readdir - pour obtenir tous les fichiers à partir d'un répertoire
var fs = require('fs');
const path = '/path_to_files/filename.anyextension';
const removeFile = (fileName) => {
fs.unlink(`${path}${fileName}`, function(error) {
if (error) {
throw error;
}
console.log('Deleted filename', fileName);
})
}
const reg = /^[a-zA-Z]+_[0-9]+(\s[2-4])+\./
fs.readdir(path, function(err, items) {
for (var i=0; i<items.length; i++) {
console.log(items[i], ' ', reg.test(items[i]))
if (reg.test(items[i])) {
console.log(items[i])
removeFile(items[i])
}
}
});
ici le code où vous pouvez supprimer le fichier / l'image du dossier.
var fs = require('fs');
Gallery.findById({ _id: req.params.id},function(err,data){
if (err) throw err;
fs.unlink('public/gallery/'+data.image_name);
});