Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

L'essentiel de Node.js

Renommer et supprimer des fichiers

Testez gratuitement nos 1340 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Les outils du serveur Node.js autorisent la suppression de fichiers et permettent de les renommer. Voyez comment procéder.
04:51

Transcription

On peut également faire du renommage de fichier. Du renommage de fichier, comment ça marche ? Bah, on va utiliser encore une fois l’utilitaire filesystem et on a deux possibilités : soit on utilise du synchrone ou de l'asynchrone. Je vous conseille dans tous les cas d’utiliser sur ce genre de choses comme : le renommage, la suppression, la création. Attention hein, quand on parle bien de création live, c’est-à-dire création de dossier par exemple, la création de dossier, il y a pas besoin d’être asynchrone, de faire du synchrone. donc là, pour le coup, eh bien évidement, c’est sync qu’on va utiliser pour ça. Ça prend deux paramètres : le premier évidement, c’est le nom du fichier, moi je veux utiliser notre fameux test.txt et je vais le renommer en change.txt, ce qui n’est pas un problème puisque effectivement ça va bien fonctionner. Alors c’est du sync, donc vu que c'est du sync, ça ne pose pas de problème de le faire là. Et comme il n’y a pas d’attente, on peut envoyer tout de suite un console.log juste derrière, sans aucun souci bien sûr, si vous faites de l'asynchrone avec juste rename, il va falloir, bien entendu, envoyer le console.log dans une fonction de callback. Bon, là en l'occurence hein, c’est la fonction synchrone qu’on utilise. Donc on va faire rename comme ça, et ce sera très bien. Alors, on va vérifier d’abord, on va même faire un ls, ce sera plus simple, que on a bien test.txt ici et on va lancer notre serveur. Donc notre serveur, il nous dit que ça a été renommé, on fait un ls. Effectivement, on n'a plus le test.txt, mais on a le change.txt. Attention, parce que si vous relancez, vous allez avoir une jolie erreur. Il va vous dire que ça n’existe pas, et que là, voyez, il y a un problème quelque part. Pensez bien à ça, encore une fois, a le wrapper, donc à le mettre dans une condition qui pourrait, pourquoi pas, vérifier que le fichier existe bien. Or de la même maniere que le renommage, on peut également faire de la suppression. Alors la suppression comment ça va fonctionner ? Bah on va utiliser également une fonction sur le filesystem qui s’appelle unlink. Unlink, c’est pareil ! Il a son pendant synchrone et asynchrone, et on va l’utiliser de façon simple et je pense qu’il vaut mieux l'utiliser de façon synchrone que de façon asynchrone, pourquoi ? Parce que c’est pareil hein, ça c’est rapide, à moins que vous ayez un unlink d'un dossier extrêmement épais, il vaudra mieux faire ça, si c’est juste sur un fichier comme ça, parce que ça prendra moins de temps et de toute façon, il vaut mieux que ce soit synchrone, ça. Comment ça va marcher ? Bien sûr, il faut lui donner un nom de fichier existant, sinon ça ne marchera pas tout simplement. Et ici, on va lui dire que ça a été supprimé comme ça on aura quand même en console l’information de la suppression. On peut essayer, on va lancer le node, il nous dit que ça a été supprimé. Maintenant on va faire un ls, effectivement on n'a plus le change.txt. Alors, si je relance, c'est toujours pareil hein! Je vais avoir une jolie error qui va me dire que ça ne marche pas. Il n’arrive pas à le faire. Quand vous faites ça, il y a une possibilité pour avoir un message d’erreur un peu plus sympa. Vous allez mettre votre suppression dans un try-catch. Ça, c’est très connu des développeurs, le try-catch, ça va permettre d’intercepter les erreurs parce que, comme vous pouvez le voir ici, cette erreur-là, elle n’est pas du tout propre, c’est pas du tout une gestion d’erreur classique. Donc, on va mettre ici error et puis on va simplement à cet endroit-là, faire un console.log de l’erreur et surtout on pourrait faire un return pour dire que ça s’arrête ici, comme ça au moins pas de problème. Alors, ça c’est mieux d’avoir des messages d’erreur propre, pourquoi ? Parce que c'est vrai qu'à l’intérieur ici, au moins on récupère tout les informations et puis ça s’affiche pas en mode brute de décoffrage. Si vous voulez avoir un message d’erreur qui vous dit Error on remove, eh bien, vous pouvez aussi avoir juste votre message d’erreur qui pourrait reprendre des informations, pourquoi pas, puisque vous avez également des paths, des informations sur cet objet d’erreur. Donc on pourrait ici, se composer une petite string avec une information à l’intérieur : Error on remove et on lui met le nom du fichier qui est celui qu’on avait dans error, error.path, comme ça, et ça vous permettra d’avoir au moins quelque chose d’un peu sympa et de moins verbeux que l’erreur classique qui est une erreur extrêmement longue et qui ne donne pas forcement beaucoup d’info. Je récapitule : on a la possibilité de renommer avec la fonction rename et on a la fonctionnalité unlink qui nous permet de supprimer. Ça, attention, c’est pour les fichiers, qu’on soit bien d’accord : le unlink et le rename comme ça, c’est pour les fichiers.

L'essentiel de Node.js

Exploitez les possibilités de Node.js et créez des applications côté serveur entièrement en JavaScript. Travaillez avec des requêtes web, gérez le protocole WebSocket, etc.

4h00 (44 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Node.js Node.js 7.0
Spécial abonnés
Date de parution :26 déc. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !