L'essentiel de Node.js

Écrire dans un fichier

Testez gratuitement nos 1270 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
L'écriture dans un fichier est tout à fait possible. Voyez qu'il n'est pas nécessaire de s'occuper des droits d'accès. Node.js s'en chargera seul.
04:52

Transcription

Bon alors, c'est génial, on a vu comment lire des fichiers. Mais maintenant, si moi j'ai envie d'en écrire des fichiers, comment je vais faire ? Je peux parce qu'avec le file système, j'ai tout à fait le droit de venir écrire. Et pour ça, je vais utiliser une fonction très simple, toujours pareil hein, disponible soit en synchronisée, soit en un asynchrone, et je vais devoir lui donner ici des infos. D'abord, je vais lui donner évidemment une extension et un nom de fichier. Puis ensuite, je vais lui donner un contenu. Alors ce contenu, il va falloir le créer évidemment, moi je vais le créer ici, on va le faire comme ça pour le moment en variable temporaire, et puis ensuite, étant donné que c'est de l'asynchrone, on va utiliser une fonction ici, avec par exemple error et file. Et à l'intérieur de cette fonction, on va juste câbler une petite fonctionnalité en console.log qui va simplement nous dire que le fichier a été créé. En faisant ça, vous allez pouvoir écrire à l'intérieur, alors, il va bien falloir choisir un petit texte à mettre dans, eh bien, le contenu, et pour ça je vais utiliser un plugin qui existe, et qui s'appelle Lorem Ipsum que vous pouvez installer sur votre éditeur et une fois que vous l'aurez installé, il sera accessible depuis le panneau de commande. Alors, le panneau de commande selon votre environnement sera différent du mien, donc vous pourrez aller le chercher dans Palette de commandes comme ça, avec Affichage, pour moi c'est majuscule, COMMANDE-P. Et vous taperez lorem. On va insérer un paragraphe et on va ici mettre une petite tabulation parce qu'on va en avoir besoin pour le bien de la formation, pour que vous compreniez ce qui se passe. Quand je vais faire ça, je vais écrire un nouveau fichier test.txt dans mon dossier. On va lancer le serveur node server.js, comme d'habitude et on va lister. Et effectivement en listant, on voit bien ici que on a créé un nouveau fichier. Ça, c'est génial parce que vous allez pouvoir même le faire de façon dynamique sans aucun problème, on pourrait imaginer que le nom de fichier est dynamisé, le contenu est dynamisé. Là, vous ferez à peu près tout ce que vous voulez, maintenant vous savez écrire. On va quand même avancer un petit peu parce qu'il y a des choses à dire. Qu'est-ce qui se passe ? Allons voir le test.txt C'est embêtant parce qu'on avait : en haut il y a une ligne, en bas il y a une ligne, et en plus, il a respecté carrément la tabulation. Si vous voulez vous prémunir de ce genre de choses, il suffira ici sur le contenu de faire ce qu'on a déjà fait précédemment, un trim Le trim, ça va supprimer tous les espaces superflus et ça va vous permettre d'avoir un fichier propre avec uniquement le texte à l'intérieur. Alors, vous remarquez quelque chose, c'est que j'ai relancé ma commande et avec writeFile, j'ai réécrit à l'intérieur. Ça, ça peut aussi être embêtant, pourquoi ? Parce que peut être que de temps en temps, on va avoir besoin non pas de venir écrire dedans mais de venir rajouter de l'information. Eh bien, sachez-le, c'est possible également, il suffira d'utiliser une autre fonctionnalité que write et je vais vous montrer laquelle. On va changer la contenu ici, on va mettre Mon super contenu, comme ça. On va enregistrer et ici, au lieu de write, on va utiliser append. Append, vous le trouverez dans la documentation hein, donc n'hésitez pas à aller regarder un petit peu. Vous savez que dans la documentation, il y a absolument tout, donc appendFile ici, avec évidemment son petit frère en synchrone, nous permettra d'ajouter de l'information. Ça va être ici, appendFile, donc rajouter de l'information au fichier. Alors attention, ça va la rajouter ici à la fin. On va vérifier que ça fonctionne bien, on va relancer le serveur, et on va regarder notre test.txt. On verra que ça n'a pas modifié la chaine du caractère du départ. Par contre, à la fin, ça a bien ajouté mon super contenu. Bien sûr, il y a pleins de choses que l'on peut faire, comme ça. Maintenant, vous savez travailler comme ça avec un petit buffer parce que pour le coup, c'est vraiment un buffer, cette partie là, bah, vous pouvez vous imaginer carrément pourquoi pas, reproduire ce qu'on avait fait tout à l'heure c'est-à dire le petit moteur de questions, et puis venir ajouter les réponses à l'intérieur du fichier au fur et à mesure. Ça, c'est pas un problème parce que vous êtes en train de travailler ici avec des outils qui vous permettent de modifier le nom dynamiquement. Enfin, on peut vraiment faire tout ce qu'on veut. Donc, il n'y a vraiment aucun problème, là, vous avez un petit exemple, un moule et je vous conseille et je vous propose même de travailler sur ça et de reproduire l'exercice, donc de reprendre le questionHandler qu'on avait au début et à chaque fois que je vais ajouter une nouvelle réponse, de venir faire, eh bien un ajout directement dans le test.txt. On peut aussi imaginer ça, l'utiliser comme un vrai système de log. Dès qu'il se passe quelque chose sur le serveur, on va vouloir venir ajouter de l'information et donc se créer des petits fichiers comme ça sans aucun problème. N'hésitez pas, c'est vraiment un super moyen de travailler des fichiers qui vont être statiques et ça, ça peut vous aider dans de très nombreux cas, quand vous avez besoin d'écrire des 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 !