Comment lire et écrire du texte dans un fichier à l'aide de JavaScript?

Comment lire et écrire du texte dans un fichier à l'aide de JavaScript?
Dans cet article, nous allons parler de la façon de lire ou d'écrire du texte dans un fichier en javascript. Si vous êtes un développeur JavaScript, vous savez que l'on ne peut pas enregistrer un fichier localement car il peut créer des problèmes de sécurité massifs.

Une autre méthode serait d'enregistrer le fichier sur notre serveur. Pour cela, nous devons transmettre toutes les données texte de notre fichier à notre serveur. Après cela, nous devons utiliser le langage côté serveur lié au serveur en raison duquel nous pourrons exécuter le code écrit dans le fichier. En dehors de cela, nous pouvons également stocker le fichier à côté du client. Un exemple serait d'utiliser des cookies pour stocker les informations.

JavaScript ne tient pas la possibilité d'accéder au système de fichiers de l'utilisateur, c'est pourquoi nous devons exécuter le projet sur un serveur. Pour ce faire, nous utiliserons le nœud.JS qui nous aidera car nous pouvons utiliser son module intégré ou la bibliothèque. Nous pouvons l'utiliser pour fournir un lien de téléchargement du fichier texte pour les utilisateurs

Prérequis: Comment importer une bibliothèque en JavaScript

NodeJS nous fournit un module ou une bibliothèque qui gère tout ce qui concerne écrire Opérations en JavaScript. Il est connu sous le nom de «Browserify-FS». En termes simples, nous pouvons dire que «Browserify-FS» est un programme JavaScript où toutes les fonctions sont écrites pour l'écriture des opérations.

Installons Browserify avec la commande suivante:

> NPM Installer Browserify-FS

Lorsqu'il est installé avec succès, importez le module Browserify-FS dans le programme requis. Nous pouvons maintenant utiliser différentes fonctions pour écrire des textes ou lire des textes à partir d'un fichier.

Écrire dans le fichier

Regardons un exemple de fonction qui créera un nouveau fichier avec le nom spécifié. S'il existe déjà un fichier avec ce nom spécifique, toutes ses données seront effacées et réécrites.

writeFile (path_to_file, data_to-be-écrit, callback_function)

Le écriture La fonction est utilisée pour l'écriture d'opérations dans Node; il accepte trois paramètres différents comme mentionné. Regardons-les en profondeur:

Chemin: Il s'agit essentiellement de l'emplacement ou du chemin relatif du fichier texte où vous souhaitez créer ou réécrire un fichier. Nous pouvons également simplement fournir le nom d'un fichier et le fichier sera généré dans le même dossier que le programme.

Données: Les données écrites dans le fichier vont ici.

Fonction de rappel: Ce paramètre est très utile car, par exemple, pour une raison quelconque, l'opération n'a pas écrit nos données, alors elle générera une erreur et nous montrera l'erreur. Il a un argument où nous pouvons passer la chaîne d'erreur ou l'argument d'erreur.

Démonstration de l'écriture de texte dans un fichier ::

Pour écrire du texte dans le fichier, nous devons d'abord exiger le «Browserify-FS”Module qui comprend la définition de la fonction du writeFile () fonction.

// nécessite Browserify-FS qui inclut la fonction writeFile ()
const fs = require ('Browserify-fs')

Plus tard, créons une variable avec le nom des données dans lesquelles nous aurons des données de chaîne auxquelles nous voulons stocker dans un fichier.

// un texte simple à écrire dans le fichier
Laissez Data = "Hello et bienvenue sur Linuxhint.com "

Maintenant, accédez à la fonction WriteFile, fournissez-lui le nom de fichier avec les données que vous souhaitez stocker dans le fichier et écrivez une fonction de rappel de gestionnaire d'erreur comme indiqué ci-dessous:

// écrit des données dans le fichier '.Fichier txt '
FS.WriteFile ('Fichier.txt ', data, (err) =>
// Gestion des erreurs à l'aide de lancer
si (err) jetez ERR;
)

Après avoir terminé le code pour écrire des données dans le fichier, l'extrait de code entier ressemblera exactement à ceci:

// nécessite Browserify-FS qui inclut la fonction writeFile ()
const fs = require ('Browserify-fs')
// un texte simple à écrire dans le fichier
Laissez Data = "Hello et bienvenue sur Linuxhint.com "
// écrit des données dans le fichier '.Fichier txt '
FS.WriteFile ('Fichier.txt ', data, (err) =>
// Gestion des erreurs à l'aide de lancer
si (err) jetez ERR;
)

Une fois tout le code écrit et lorsque vous exécutez le code donné ci-dessus, il créera un fichier dans le navigateur. Maintenant, vérifions-le en lisant le même fichier.

Lire le fichier

Maintenant que nous avons écrit dans un fichier, lisons à partir d'un fichier. La fonction readFile () est utilisé lorsque nous voulons lire le contenu d'un fichier.

Syntaxe:

readFile (path_to_file, options, callback_function)

Le readFile () La fonction est utilisée pour la lecture des opérations; Il accepte également trois paramètres comme mentionné ci-dessus. Regardons-les en profondeur:

chemin: Tout comme dans writeFile (), le paramètre de chemin readFile () est également pour spécifier l'emplacement du fichier. Supposons que nous soyons et que le programme est dans le même fichier, alors nous devons simplement spécifier le nom du fichier et non le chemin que nous voulons lire.

Options: Un paramètre / argument facultatif qui spécifie les données qui doivent être lues à partir du fichier texte. Le tampon par défaut est utilisé, si aucun argument n'est passé.

Fonction de rappel: C'est la fonction qui a en outre deux arguments différents. Ces arguments sont des erreurs et des données. Si l'opération ne réussit pas à extraire les données du fichier, alors se tromper montre quel est le défaut, sinon si l'opération est réussie, l'argument de données a les données du fichier.

Démonstration de lecture de texte à partir d'un fichier

Nous utiliserons le fichier de fichiers récemment créé «Fichier.SMS".

déposer.Données TXT: «Bonjour et bienvenue à Linuxhint.com »

Pour lire le texte du fichier, nous aurons d'abord besoin du «Browserify-FS”Module qui comprend la définition de la fonction du readFile () fonction.

// nécessite Browserify-FS qui inclut la fonction readFile ()
const fs = require ('Browserify-fs')

Ensuite, nous accéderons au readFile () Fonction, fournissez-lui le nom de fichier dont vous souhaitez lire les données et rédiger une fonction de rappel pour la gestion des erreurs et afficher les données:

// la lecture des données du fichier '.Fichier txt '
FS.ReadFile ('Fichier.txt ', (err, data) =>
// Gestion des erreurs à l'aide de lancer
si (err) jetez ERR;
// montrant les données récupérées du fichier sur la console
console.journal (données.toString ());
)

Après avoir terminé le code pour lire les données du fichier, l'extrait de code entier ressemblera exactement à ceci:

// nécessite Browserify-FS qui inclut la fonction readFile ()
const fs = require ('Browserify-fs')
// la lecture des données du fichier '.Fichier txt '
FS.ReadFile ('Fichier.txt ', (err, data) =>
// Gestion des erreurs à l'aide de lancer
si (err) jetez ERR;
// montrant les données récupérées du fichier sur la console
console.journal (données.toString ());
)

Une fois tout le code écrit et que lorsque vous exécuterez le code donné ci-dessus, il lira le fichier souhaité du navigateur et affichera toutes les données de la console, comme indiqué dans la capture d'écran ci-dessous:

C'est ainsi que vous pouvez lire / écrire des données dans un fichier à l'aide du module Browserify-FS dans JavaScript.

Conclusion

Écrire ou lire un fichier dans n'importe quel langage de programmation est une nécessité car nous pouvons développer de petits projets où nous n'avons pas besoin de grandes bases de données. Nous utilisons ensuite des systèmes de fichiers pour lire ou écrire des données dans un fichier. Dans cet article, nous avons vu comment lire ou écrire du texte dans un fichier en javascript. Nous avons utilisé «Browserify-FS» pour réaliser notre tâche.

A propos de l'auteur

Shehroz Azam

Un développeur JavaScript et un passionné de Linux avec 4 ans d'expérience industrielle et un savoir-faire éprouvé pour combiner des points de vue créatifs et de l'utilisabilité entraînant des applications Web de classe mondiale. J'ai de l'expérience en travaillant avec Vue, React & Node.JS et travaille actuellement sur la rédaction d'articles et la création de vidéos.

Afficher tous les messages

Linux Hint LLC, éditeur @ Linuxhint.com
1309 S Mary Ave Suite 210, Sunnyvale, CA 94087
Politique de confidentialité et conditions d'utilisation