Je souhaite supprimer le contenu d'un simple fichier texte avec node.js. Ou remplacez le fichier par un nouveau/vide.Node.js/Supprimer le contenu du fichier
Comment est-ce que je peux réaliser ceci dans le noeud?
Je souhaite supprimer le contenu d'un simple fichier texte avec node.js. Ou remplacez le fichier par un nouveau/vide.Node.js/Supprimer le contenu du fichier
Comment est-ce que je peux réaliser ceci dans le noeud?
Vous recherchez fs.truncate
ou fs.writeFile
un des problèmes suivants fonctionnera:
var fs = require('fs')
fs.truncate('/path/to/file', 0, function(){console.log('done')})
ou
var fs = require('fs')
fs.writeFile('/path/to/file', '', function(){console.log('done')})
Il y a aussi synchronous versions de both functions que vous ne devriez pas utiliser.
+1 pour ne pas enlever le fichier et écrire dans le même fichier! – ChrisCM
Pouvez-vous expliquer pourquoi les versions synchrones ne sont pas souhaitables? –
Bien sûr! La principale raison est que le nœud est un thread unique (pour la plupart), donc si vous faites des opérations synchrones onéreuses, vous bloquez l'exécution pour tout votre processus. – Andbdrew
est l'appel dont vous avez besoin pour supprimer un fichier. Pour le remplacer par des contenus différents, il suffit de l'écraser avec fs.writeFile
.
A partir de la documentation de noeud pour fs.writeFile: écrit de manière asynchrone des données dans un fichier, en remplaçant le fichier s'il existe déjà. Votre étape de dissociation est inutile. – ChrisCM
@ChrisCM Je réponds aux deux parties de la question. –
Avez-vous regardé ici? http://nodejs.org/api/fs.html – Dan455
downvoted pour manque de recherche –
N'est-ce pas le comportement par défaut de fs.writeFile, si vous ne fournissez pas de drapeaux ??? Il est en fait plus difficile à ajouter à ajouter à un fichier ... – ChrisCM