Comment interagir avec les descripteurs de fichiers dans Node.js ?

Comment Interagir Avec Les Descripteurs De Fichiers Dans Node Js



Dans Node.js, le «  descripteur de fichier ' est simplement un index entier non négatif dans la table des descripteurs de fichiers. La table des descripteurs de fichiers est un tableau dans le «  PCB (bloc de contrôle de processus) » qui conserve les enregistrements de tous les processus d'un système d'exploitation. Il agit comme la référence d'un fichier ouvert qui est utilisé pour identifier ou accéder facilement à un fichier ouvert dans un système d'exploitation. Une fois le fichier ouvert accessible via le bouton « descripteur de fichier 'L'utilisateur peut alors y effectuer l'opération souhaitée selon les besoins.

Cet article montrera comment l'utilisateur peut interagir avec les descripteurs de fichiers dans Node.js.







Comment interagir avec les descripteurs de fichiers dans Node.js ?

L'utilisateur peut interagir avec les descripteurs de fichiers de manière à les récupérer à l'aide des méthodes prédéfinies indiquées ci-dessous du « fs module » :



Développons ces méthodes une par une.



Méthode 1 : utilisez « fs.open() » pour obtenir un descripteur de fichier

Le ' fs.open () » est la méthode la plus couramment utilisée du « fs 'Module qui ouvre le fichier de manière asynchrone pour effectuer plusieurs opérations telles que le lire, l'écrire, le renommer, le mettre à jour et le supprimer. De plus, il renvoie également un « descripteur de fichier ' après avoir effectué l'opération définie sur le fichier ouvert via la fonction de rappel.





Syntaxe

La syntaxe de base du « fs.open () » est écrite ci-dessous :

fs. ouvrir ( nom de fichier , drapeaux , mode , rappeler )

Selon la syntaxe indiquée ci-dessus, le « fs.open () »la méthode prend en charge les paramètres suivants :



  • nom de fichier : Il spécifie le nom ainsi que le chemin du fichier particulier que l'utilisateur souhaite ouvrir.
  • drapeaux : Il désigne les opérations qui seront effectuées sur le fichier ouvert. Sa valeur par défaut est « r(read) » par défaut.
  • mode : Il indique les autorisations du fichier qui est « 0o666 (à la fois lisible et inscriptible) ' par défaut.
  • rappeler : Il s'exécute après l'achèvement du ' fs.open ()' méthode. Il soutient le « se tromper ' paramètre qui renvoie une erreur si se produit pendant l'exécution de la méthode et le 'données' paramètre qui renvoie le ' fd(descripteur de fichier) » pour accéder au fichier ouvert.

Valeur de retour : Le ' fs.open() ' donne un descripteur de fichier comme valeur renvoyée.

Différents indicateurs disponibles utilisés avec les descripteurs de fichiers dans Node.js

Tous les types de drapeaux que le « fs.open() ' Les supports de la méthode pour effectuer les opérations souhaitées sur le fichier ouvert sont répertoriés ci-dessous :

Drapeaux Description
Dans Il permet d'écrire le contenu dans un fichier ouvert, sans le présenter un nouveau fichier sera créé.
w+ Il est utilisé pour ouvrir le fichier pour y effectuer des opérations de lecture et d'écriture.
wx Cela fonctionne de la même manière que le ' Dans ». Toutefois, il ne crée pas le fichier spécifié s'il n'est pas présent dans le système de fichiers.
wx+ C'est la même chose que le ' w+ ' Cependant, il échoue si le fichier n'existe pas.
r Il ouvre le fichier pour le lire et crée également un nouveau fichier s'il n'est pas présent.
r+ Il ouvre le fichier en mode lecture et écriture.
rs+ Il ouvre un fichier de manière synchrone pour y effectuer les tâches de lecture et d'écriture.
un Il ouvre le fichier pour ajouter son contenu.
un+ Il ouvre le fichier pour lire et ajouter son contenu.
hache C'est la même chose que le ' un ' mais il ne crée pas de nouveau fichier s'il n'est pas récent dans le système de fichiers.
hache+ Cela fonctionne de la même manière que le ' un+ ' Cependant, cela ne crée pas de nouveau fichier.

Après avoir acquis les bases du « fs.open ()”, passons à sa mise en œuvre pratique pour obtenir le descripteur de fichier.

Exemple : application de la méthode « fs.open() » pour obtenir un descripteur de fichier avec l'indicateur par défaut

Cet exemple montre applique le 'fs.open()' méthode pour ouvrir le fichier spécifié pour lire et renvoyer le descripteur de fichier :

const fs = exiger ( 'fs' ) ;
était rés = fs. ouvrir ( 'fichier.txt' , 'r' , fonction ( se tromper , fd ) {
si ( se tromper ) {
console. erreur ( se tromper ) ;
} autre {
console. enregistrer ( « Fichier ouvert ! » ) ;
console. enregistrer ( fd ) ; }
} ) ;

L'explication du bloc de code ci-dessus est la suivante :

  • Premièrement, le « exiger () » méthode importe le «  fs (système de fichiers) module '.
  • Ensuite, le « fs.open ()' méthode spécifie le nom du dossier souhaité, indicateur par défaut ' r », et une fonction de rappel comme premier, deuxième et troisième arguments respectivement. La fonction de rappel transmet en outre le «  se tromper ' et le ' fd ' arguments. Cette méthode ouvre le fichier spécifié en lecture, puis exécute la fonction de rappel donnée.
  • Dans la définition de la fonction de rappel, un « si ' La déclaration utilise le ' console.erreur() ' pour afficher le message d'erreur qui se produit lors de l'ouverture du fichier spécifié.
  • Si aucune erreur ne se produit, alors le « autre ' L'instruction s'exécutera en utilisant le ' console.log () » pour afficher le message de vérification et le « descripteur de fichier » désigné par « fd ' argument.

Sortir

Maintenant, effectue l'exécution pour contenir ' application .js » via :

application de nœud. js

Le résultat ci-dessous montre que le fichier est ouvert en lecture et renvoie également le descripteur de fichier :

Méthode 2 : utilisez « fs.openSync() » pour obtenir un descripteur de fichier

Le ' fs.openSync () » est la méthode prédéfinie du « fs ' module qui ouvre le fichier de manière synchrone pour effectuer des opérations courantes : comme le lire, l'écrire, le renommer, le mettre à jour et le supprimer. Outre ses fonctionnalités de base, cette méthode renvoie un « descripteur de fichier ' directement au lieu d'invoquer la fonction de rappel comme dans le ' fs.open ()' méthode.

Syntaxe

fs. ouvrirSync ( chemin , drapeaux , mode )

Les paramètres utilisés dans ce qui précède ' fs.openSync() ' La méthode est expliquée ci-dessous :

  • chemin : Il spécifie le nom et le chemin du fichier particulier sous la forme d'une chaîne, d'une URL ou d'un tampon.
  • drapeaux : Il désigne la chaîne ou la valeur numérique qui spécifie les opérations qui seront effectuées sur le fichier ouvert. Sa valeur par défaut est « r(read) » par défaut.
  • mode : Il indique les autorisations du fichier qui est « 0o666 (à la fois lisible et inscriptible) ' par défaut.

Valeur de retour : Le ' fs.openSync() ' fournit un entier comme valeur renvoyée qui désigne le descripteur de fichier.

Suivez notre guide détaillé sur le « Méthode fs.openSync() » pour une mise en œuvre pratique.

Méthode 3 : utilisez « fsPromise.open() » pour obtenir un descripteur de fichier

Le ' fsPromises.open() » est la méthode prédéfinie du « fs ' module qui ouvre le fichier de manière asynchrone comme une promesse et renvoie un ' descripteur de fichier ». Si la promesse est résolue, il vérifie que le dossier spécifié est ouvert, sinon il est rejeté avec un objet d'erreur.

Syntaxe

fsPromesses. ouvrir ( nom de fichier , drapeaux , mode )

Le ' fsPromises.open () » fonctionne sur les trois paramètres suivants :

  • nom de fichier : Il indique le nom du fichier particulier et le chemin sous la forme d'une chaîne, d'une URL ou d'un tampon que l'utilisateur souhaite lire par défaut.
  • drapeaux : Il peut s'agir d'une chaîne ou d'une valeur entière non négative qui précise les opérations à effectuer sur le fichier ouvert. Sa valeur par défaut est « r(read) » par défaut.
  • mode : Il spécifie les autorisations de fichier qui sont « 0o666 (à la fois lisible et inscriptible) ' par défaut.

Valeur de retour : Cela donne un ' promesse ' comme valeur renvoyée du ' fsPromises.open ()' méthode.

Suivez notre guide détaillé sur le « Méthode fsPromises.open() » pour une mise en œuvre pratique.

Quelles différentes opérations peuvent être effectuées avec les descripteurs de fichiers dans Node.js ?

Une fois le descripteur de fichier récupéré, l'utilisateur peut l'utiliser pour accéder à ce fichier particulier afin d'y effectuer différentes opérations comme ouvrir, fermer, lire, écrire et bien plus encore. Pour effectuer ces opérations particulières, suivez notre guide détaillé sur « Module de système de fichiers ».

Il s'agit d'interagir avec les descripteurs de fichiers dans Node.js.

Conclusion

Pour interagir avec les descripteurs de fichiers, utilisez le ' fs.open()', 'fs.openSync() ', ou la ' fsPromises.open() » dans Node.js. Toutes ces méthodes ouvrent le fichier pour y effectuer différentes opérations spécifiées via le ' drapeau ' et renvoie également le paramètre ' descripteur de fichier » qui est la référence du fichier ouvert. Cet article explique comment interagir avec les descripteurs de fichiers dans Node.js.