A Node.js, el ' descriptor de fitxer ” és simplement un índex enter no negatiu a la taula descriptor de fitxers. La taula descriptor de fitxers és una matriu dins del ' PCB (Bloc de control de processos) ” que guarda els registres de tots els processos d'un sistema operatiu. Actua com a referència d'un fitxer obert que s'utilitza per identificar o accedir fàcilment a un fitxer obert en un sistema operatiu. Un cop s'accedeix al fitxer obert mitjançant el ' descriptor de fitxer ', llavors l'usuari pot realitzar-hi l'operació desitjada segons els requisits.
Aquest escrit mostrarà com l'usuari pot interactuar amb els descriptors de fitxers a Node.js.
Com interactuar amb els descriptors de fitxers a Node.js?
L'usuari pot interactuar amb els descriptors de fitxers de manera de recuperar-los amb l'ajuda dels mètodes predefinits que s'indiquen a continuació del ' fs ” mòdul:
- Utilitzeu 'fs.open()' per obtenir un descriptor de fitxer
- Utilitzeu 'fs.openSync()' per obtenir un descriptor de fitxer
- Utilitzeu 'fsPromise.open()' per obtenir un descriptor de fitxer
Anem a explicar aquests mètodes un per un.
Mètode 1: utilitzeu 'fs.open()' per obtenir un descriptor de fitxer
El ' fs.open ()' és el mètode més utilitzat de la ' fs ” mòdul que obre el fitxer de manera asíncrona per realitzar diverses operacions com llegir, escriure, canviar-lo de nom, actualitzar-lo i suprimir-lo. A més, també retorna un ' descriptor de fitxer ” després de realitzar l'operació definida al fitxer obert mitjançant la funció de devolució de trucada.
Sintaxi
La sintaxi bàsica del ' fs.open ()” mètode s'escriu a continuació:
fs. obert ( nom de l'arxiu , banderes , mode , devolució de trucada )Segons la sintaxi esmentada anteriorment, el ' fs.open El mètode () admet els paràmetres següents:
- nom de l'arxiu : Especifica el nom i la ruta del fitxer concret que l'usuari vol obrir.
- banderes : Indica les operacions que es realitzaran sobre el fitxer obert. El seu valor per defecte és 'r(llegir)' per defecte.
- mode : indica els permisos del fitxer que és “ 0o666 (tant llegibles com escrivibles) ' per defecte.
- devolució de trucada : s'executa després de completar el ' fs.open ()” mètode. Dóna suport al ' errar ” paràmetre que genera un error si es produeix durant l'execució del mètode i el 'dades' paràmetre que retorna el ' fd (descriptor de fitxer) ” per accedir al fitxer obert.
Valor de retorn: El ' fs.open() ” dóna un descriptor de fitxer com a valor retornat.
S'utilitzen diferents senyals disponibles juntament amb els descriptors de fitxers a Node.js
Tot tipus de banderes que el ' fs.open() ” Els suports del mètode per realitzar les operacions desitjades al fitxer obert s'enumeren a continuació:
Banderes | Descripció |
---|---|
En | S'utilitza per escriure el contingut en un fitxer obert, sense presentar-lo es crearà un nou fitxer. |
w+ | S'utilitza per obrir el fitxer per realitzar-hi operacions de lectura i escriptura. |
wx | Funciona igual que el ' En ”. Tanmateix, no crea el fitxer especificat si no està present al sistema de fitxers. |
wx+ | És el mateix que el ' w+ ” però falla si el fitxer no existeix. |
r | Obre el fitxer per llegir-lo i també crea un fitxer nou si no està present. |
r+ | Obre el fitxer en mode llegible i escrit. |
rs+ | Obre de manera sincrònica un fitxer per realitzar les tasques de lectura i escriptura sobre ell. |
a | Obre el fitxer per afegir-ne el contingut. |
a+ | Obre el fitxer per llegir-lo i afegir-ne el contingut. |
destral | És el mateix que el ' a ” però no crea un fitxer nou si no és recent al sistema de fitxers. |
destral+ | Funciona igual que el ' a+ ” tanmateix no crea un fitxer nou. |
Després d'aconseguir els conceptes bàsics de la ' fs.open ()” passem a la seva implementació pràctica per obtenir el descriptor del fitxer.
Exemple: aplicació del mètode 'fs.open()' per obtenir el descriptor de fitxers amb el senyalador predeterminat
Aquest exemple mostra que s'aplica 'fs.open()' mètode per obrir el fitxer especificat per llegir i retornar el descriptor del fitxer:
const fs = requereixen ( 'fs' ) ;era res = fs. obert ( 'fitxer.txt' , 'r' , funció ( errar , fd ) {
si ( errar ) {
consola. error ( errar ) ;
} altra cosa {
consola. registre ( 'Arxiu obert!' ) ;
consola. registre ( fd ) ; }
} ) ;
L'explicació del bloc de codi anterior és la següent:
- En primer lloc, el ' requereixen ()' el mètode importa el ' fs (sistema de fitxers) ” mòdul.
- A continuació, el ' fs.open ()' mètode especifica el nom de la carpeta desitjada, marca per defecte ' r ”, i una funció de devolució de trucada com a primer, segon i tercer argument respectivament. La funció de devolució de trucada passa a més el ' errar ' i la ' fd ' arguments. Aquest mètode obre el fitxer especificat per llegir-lo i després executa la funció de devolució de trucada donada.
- A la definició de la funció de devolució de trucada, un ' si ' La declaració utilitza el ' console.error() ” per mostrar el missatge d'error que es produeix en obrir el fitxer especificat.
- Si no es produeix cap error, aleshores el ' altra cosa ' s'executarà la instrucció que utilitza el ' console.log ()' mètode per mostrar el missatge de verificació i el 'descriptor de fitxer' que es denota amb el ' fd ” argument.
Sortida
Ara, realitza l'execució per contenir ' aplicació .js' mitjançant:
aplicació node. jsLa sortida següent mostra que el fitxer s'obre per llegir i també retorna el descriptor del fitxer:
Mètode 2: utilitzeu 'fs.openSync()' per obtenir un descriptor de fitxer
El ' fs.openSync ()' és el mètode predefinit del ' fs ” mòdul que obre el fitxer de manera sincrònica per realitzar operacions habituals: com llegir, escriure, canviar-lo de nom, actualitzar-lo i suprimir-lo. Juntament amb la seva funcionalitat bàsica, aquest mètode retorna un ' descriptor de fitxer ' directament en lloc d'invocar la funció de devolució de trucada com a ' fs.open ()” mètode.
Sintaxi
fs. openSync ( Camí , banderes , mode )Els paràmetres utilitzats a l'anterior ' fs.openSync() ” El mètode s'explica a continuació:
- Camí : Especifica el nom i la ruta del fitxer concret en forma de cadena, URL o memòria intermèdia.
- banderes : Denota la cadena o valor numèric que especifica les operacions que es realitzaran en el fitxer obert. El seu valor per defecte és 'r(llegir)' per defecte.
- mode : indica els permisos del fitxer que és “ 0o666 (tant llegibles com escrivibles) ' per defecte.
Valor de retorn: El ' fs.openSync() ” proporciona un nombre enter com a valor retornat que denota el descriptor del fitxer.
Seguiu la nostra guia detallada sobre ' Mètode fs.openSync(). ” per a la seva implementació pràctica.
Mètode 3: utilitzeu 'fsPromise.open()' per obtenir un descriptor de fitxer
El ' fsPromises.open() ' és el mètode predefinit del ' fs ” mòdul que obre el fitxer de manera asíncrona com a promesa i retorna un “ descriptor de fitxer ”. Si es resol la promesa, verifica que s'obre la carpeta especificada, en cas contrari, es rebutja amb un objecte d'error.
Sintaxi
fsPromeses. obert ( nom de l'arxiu , banderes , mode )El ' fsPromises.open ()” mètode funciona amb els tres paràmetres següents:
- nom de l'arxiu : indica el nom del fitxer concret i la ruta en forma de cadena, URL o memòria intermèdia que l'usuari vol llegir per defecte.
- banderes : pot ser una cadena o un valor enter no negatiu que especifiqui les operacions a realitzar al fitxer obert. El seu valor per defecte és 'r(llegir)' per defecte.
- mode : Especifica els permisos del fitxer que són “ 0o666 (tant llegibles com escrivibles) ' per defecte.
Valor de retorn: Dóna un ' promesa ' com a valor retornat del ' fsPromises.open ()” mètode.
Seguiu la nostra guia detallada sobre ' fsPromises.open() Mètode ” per a la seva implementació pràctica.
Quines operacions diferents es poden realitzar amb descriptors de fitxers a Node.js?
Un cop recuperat el descriptor del fitxer, l'usuari pot utilitzar-lo per accedir a aquest fitxer en particular per realitzar-hi diferents operacions com obrir, tancar, llegir, escriure i molt més. Per realitzar aquestes operacions particulars, seguiu la nostra guia detallada sobre ' Mòdul del sistema de fitxers ”.
Es tracta de interactuar amb els descriptors de fitxers a Node.js.
Conclusió
Per interactuar amb els descriptors de fitxers, utilitzeu el ' fs.open()', 'fs.openSync() ”, o el “ fsPromises.open() ” mètode a Node.js. Tots aquests mètodes obren el fitxer per realitzar diferents operacions sobre ell especificades mitjançant el ' bandera ' i també retorna el ' descriptor de fitxer ” que és la referència del fitxer obert. Aquest escrit ha explicat com interactuar amb els descriptors de fitxers a Node.js.