¿Cómo interactuar con descriptores de archivos en Node.js?

Como Interactuar Con Descriptores De Archivos En Node Js



En Node.js, el ' descriptor de archivo ”es simplemente un índice entero no negativo en la tabla de descriptores de archivos. La tabla de descriptores de archivos es una matriz dentro del archivo ' PCB (bloque de control de procesos) ”que mantiene los registros de todos los procesos de un sistema operativo. Actúa como referencia de un archivo abierto que se utiliza para identificar o acceder fácilmente a un archivo abierto en un sistema operativo. Una vez que se accede al archivo abierto a través del botón ' descriptor de archivo ”Entonces el usuario puede realizar la operación deseada según los requisitos.

Este artículo mostrará cómo el usuario puede interactuar con los descriptores de archivos en Node.js.







¿Cómo interactuar con descriptores de archivos en Node.js?

El usuario puede interactuar con los descriptores de archivos para recuperarlos con la ayuda de los métodos predefinidos que se indican a continuación del ' fs ”módulo:



Analicemos estos métodos uno por uno.



Método 1: utilice “fs.open()” para obtener un descriptor de archivo

El ' fs.open ()” es el método más utilizado del “ fs 'Módulo que abre el archivo de forma asincrónica para realizar varias operaciones como leerlo, escribirlo, cambiarle el nombre, actualizarlo y eliminarlo. Además, también devuelve un ' descriptor de archivo ”después de realizar la operación definida en el archivo abierto a través de la función de devolución de llamada.





Sintaxis

La sintaxis básica del “ fs.open ()” está escrito a continuación:

fs. abierto ( Nombre del archivo , banderas , modo , llamar de vuelta )

Según la sintaxis mencionada anteriormente, el “ fs.open ()” admite los siguientes parámetros:



  • Nombre del archivo : Especifica el nombre y la ruta del archivo particular que el usuario desea abrir.
  • banderas : Indica las operaciones que se realizarán en el archivo abierto. Su valor predeterminado es 'r (leer)' por defecto.
  • modo : Indica los permisos del archivo que se encuentra “ 0o666 (tanto legible como escribible) ' por defecto.
  • llamar de vuelta : Se ejecuta después de completar el “ fs.open ()' método. Apoya el “ errar 'Parámetro que arroja un error si ocurre durante la ejecución del método y el 'datos' parámetro que devuelve el “ fd(descriptor de archivo) ”para acceder al archivo abierto.

Valor de retorno: El ' fs.open() ”da un descriptor de archivo como valor devuelto.

Diferentes indicadores disponibles utilizados junto con descriptores de archivos en Node.js

Todo tipo de banderas que el “ fs.open() Los métodos admitidos para realizar las operaciones deseadas en el archivo abierto se enumeran a continuación:

Banderas Descripción
En Se utiliza para escribir el contenido en un archivo abierto, sin presentarlo se creará un archivo nuevo.
w+ Se utiliza para abrir el archivo y realizar operaciones de lectura y escritura en él.
wx Funciona igual que el “ En ”. Sin embargo, no crea el archivo especificado si no está presente en el sistema de archivos.
wx+ Es lo mismo que el “ w+ ”Sin embargo, falla si el archivo no existe.
r Abre el archivo para leerlo y también crea un archivo nuevo si no está presente.
r+ Abre el archivo en modo legible y grabable.
r+ Abre sincrónicamente un archivo para realizar las tareas de lectura y escritura en él.
a Abre el archivo para agregar su contenido.
un+ Abre el archivo para leerlo y agregar su contenido.
hacha Es lo mismo que el “ a ”pero no crea un archivo nuevo si no es reciente en el sistema de archivos.
hacha+ Funciona igual que el “ un+ ”Sin embargo, no crea un archivo nuevo.

Después de adquirir los conceptos básicos del “ fs.open ()” pasemos a su implementación práctica para obtener el descriptor del archivo.

Ejemplo: aplicación del método “fs.open()” para obtener un descriptor de archivo con el indicador predeterminado

Este ejemplo muestra que se aplica la “fs.open()” Método para abrir el archivo especificado para leer y devolver el descriptor del archivo:

constante fs = requerir ( 'fs' ) ;
era res = fs. abierto ( 'archivo.txt' , 'r' , función ( errar , fd ) {
si ( errar ) {
consola. error ( errar ) ;
} demás {
consola. registro ( '¡Archivo abierto!' ) ;
consola. registro ( fd ) ; }
} ) ;

La explicación del bloque de código anterior es la siguiente:

  • En primer lugar, el “ requerir ()” importa el método “ fs(Sistema de archivos) ”módulo.
  • A continuación, el “ fs.open ()” método especifica el nombre de la carpeta deseada, bandera predeterminada “ r ”, y una función de devolución de llamada como primer, segundo y tercer argumento respectivamente. La función de devolución de llamada pasa además el ' errar ' y el ' fd ”argumentos. Este método abre el archivo especificado para leer y luego ejecuta la función de devolución de llamada dada.
  • En la definición de la función de devolución de llamada, un ' si 'La declaración utiliza el' consola.error() 'Método para mostrar el mensaje de error que aparece al abrir el archivo especificado.
  • Si no se produce ningún error, entonces el ' demás 'Se ejecutará la declaración que utiliza el ' consola.log ()” para mostrar el mensaje de verificación y el “descriptor de archivo” que se indica con el “ fd ' argumento.

Producción

Ahora, realiza la ejecución para contener “ aplicación .js” a través de:

aplicación de nodo. js

El siguiente resultado muestra que el archivo está abierto para lectura y también devuelve el descriptor del archivo:

Método 2: utilice “fs.openSync()” para obtener un descriptor de archivo

El ' fs.openSync ()” es el método predefinido de “ fs ”Módulo que abre el archivo de forma sincrónica para realizar operaciones comunes: como leerlo, escribirlo, cambiarle el nombre, actualizarlo y eliminarlo. Junto con su funcionalidad básica, este método devuelve un ' descriptor de archivo ”directamente en lugar de invocar la función de devolución de llamada como en “ fs.open ()' método.

Sintaxis

fs. sincronización abierta ( camino , banderas , modo )

Los parámetros utilizados en lo anterior ' fs.openSync() El método se explica a continuación:

  • camino : Especifica el nombre y la ruta del archivo particular en forma de cadena, URL o búfer.
  • banderas : Denota la cadena o valor numérico que especifica las operaciones que se realizarán en el archivo abierto. Su valor predeterminado es 'r (leer)' por defecto.
  • modo : Denota los permisos del archivo que es “ 0o666 (tanto legible como escribible) ' por defecto.

Valor de retorno: El ' fs.openSync() ”proporciona un número entero como valor devuelto que indica el descriptor del archivo.

Siga nuestra guía detallada sobre “ Método fs.openSync() ”para la implementación práctica.

Método 3: utilice “fsPromise.open()” para obtener un descriptor de archivo

El ' fsPromises.open() ' es el método predefinido del ' fs 'Módulo que abre asincrónicamente el archivo como una promesa y devuelve un' descriptor de archivo ”. Si la promesa se resuelve, verifica que la carpeta especificada esté abierta; de lo contrario, se rechaza con un objeto de error.

Sintaxis

fsPromesas. abierto ( Nombre del archivo , banderas , modo )

El ' fsPromises.open ()” funciona con los siguientes tres parámetros:

  • Nombre del archivo : Indica el nombre del archivo particular y la ruta en forma de cadena, URL o búfer que el usuario desea leer de forma predeterminada.
  • banderas : Puede ser una cadena o un valor entero no negativo que especifica las operaciones a realizar en el archivo abierto. Su valor predeterminado es 'r (leer)' por defecto.
  • modo : Especifica los permisos del archivo que es “ 0o666 (tanto legible como escribible) ' por defecto.

Valor de retorno: Da un ' promesa ' como valor devuelto de ' fsPromises.open ()' método.

Siga nuestra guía detallada sobre “ Método fsPromises.open() ”para la implementación práctica.

¿Qué diferentes operaciones se pueden realizar con descriptores de archivos en Node.js?

Una vez que se recupera el descriptor del archivo, el usuario puede usarlo para acceder a ese archivo en particular y realizar diferentes operaciones en él, como abrir, cerrar, leer, escribir y mucho más. Para realizar estas operaciones particulares, siga nuestra guía detallada en “ Módulo de sistema de archivos ”.

Se trata de interactuar con los descriptores de archivos en Node.js.

Conclusión

Para interactuar con los descriptores de archivos, utilice el botón ' fs.open()”, “fs.openSync()” ', o el ' fsPromises.open() ”Método en Node.js. Todos estos métodos abren el archivo para realizar diferentes operaciones en él especificadas mediante el botón ' bandera 'Parámetro y también devolver el' descriptor de archivo ”que es la referencia del archivo abierto. Este artículo ha explicado cómo interactuar con los descriptores de archivos en Node.js.