Cititorii ca tine ajută la sprijinirea MUO. Când efectuați o achiziție folosind link-uri de pe site-ul nostru, este posibil să câștigăm un comision de afiliat.
Lucrul cu fișiere este una dintre cele mai comune sarcini pe care le efectuează un program, așa că economisiți timp și efort cu biblioteca de ajutor Node.
Una dintre caracteristicile încorporate ale Node.js este manipularea sistemului de fișiere al sistemului de operare folosind modulul fs. Acest modul Node.js conține multe funcții utile pentru lucrul cu fișiere și directoare.
Fișierele sunt denumite pur și simplu obiecte persistente sau bucăți de date care sunt de obicei stocate pe un suport dur cunoscut sub numele de disc sau memorie. Fișierele pot fi de diferite tipuri, de la fișiere text la fișiere imagine, fișiere audio și multe altele.
Deci, ce este un sistem de fișiere și cum puteți interacționa cu ușurință cu sistemul de fișiere al unui sistem de operare în Node.js?
Ce este un sistem de fișiere?
Un sistem de fișiere definește modul în care un sistem de operare poate identifica, organiza, stoca și accesa fișiere, împreună cu alte operațiuni.
Sistemul de fișiere al unui sistem de operare face, de asemenea, sarcina de a grupa fișierele în colecții cunoscute sub numele de directoare sau foldere. Fișierele și directoarele obișnuite sunt cele mai comune părți ale unui sistem de fișiere cu care sunt adesea interacționate printre multe altele.
Câteva exemple de sisteme de fișiere includ New Technology File System (NTFS), UNIX File System (UFS) și Hierarchical File System (HFS).
Ce este modulul Node.js fs?
Node.js fs module este o bibliotecă încorporată furnizată de Node.js pentru lucrul cu sistemul de fișiere al oricărui sistem de operare care acceptă Node. The fs modulul este ușor accesibil și este biblioteca de bază pentru operațiuni cu fișiere, cum ar fi citind din fișiere sau scrierea datelor în fișiere în Node.js.
Este foarte frecvent folosit cu cale și os module pentru a efectua diverse operații asupra fișierelor. Pentru a utiliza fs modul în programele dvs., îl puteți importa în codul sursă, așa cum se arată în codul de mai jos.
// CommonJS
const fs = cere('fs')
// ES6
import fs din „fs”
Ce este modulul calea Node.js?
Puteți folosi Node.js cale modul pentru a manipula căile fișierelor. Include utilitare pentru interacțiunea ușoară cu căile de fișiere și directoare. Folosind fs și cale module în tandem pentru a finaliza o sarcină este o practică standard. Acest lucru se datorează faptului că majoritatea fs funcțiile modulului depind de căile către fișierele țintă sau directoare pentru a funcționa.
Puteți importa cale modul în codul dvs. cu sintaxa de mai jos:
// CommonJS
const cale = cere('cale')
// ES6
import cale din 'cale'
Funcții comune pentru accesarea sistemului de fișiere în Node.js
Iată cele mai frecvent utilizate Node.js fs și cale funcțiile modulului și cum să le folosiți pentru a interacționa cu fișierele și directoarele.
Lucrul cu căile
-
cale.rezolvare: Aceasta este funcția pentru rezolvarea unei căi dintr-o listă de instrucțiuni de cale transmise ca parametri. De exemplu:
path.resolve('acasă', 'proiecte', 'web');
// se intoarce/home/projects/web path.resolve('acasă/proiecte/web', '../mobil');
// se intoarce/home/projects/mobile -
cale.normaliza: The normaliza funcția returnează calea corectă și normalizată dintr-o cale de intrare dată. De exemplu:
path.normalize('home/projects/web/../mobile/./code');
// se întoarce acasă/proiecte/mobil/cod -
cale.ună: Această funcție construiește o cale din mai multe segmente. De exemplu:
path.join('acasă', 'proiecte', '../', 'filme');
// se întoarce acasă/filme -
path.basename: The nume de bază funcția returnează segmentul final de cale. Îl poți folosi în două moduri:
path.basename('home/projects/web/index.js');
// returnează index.jspath.basename('home/projects/web/index.js', '.js');
// elimină extensia și returnează „index” -
path.dirname: Această funcție returnează calea către ultimul director al unei căi date. Exemplu:
path.dirname('home/projects/web/index.js');
// se întoarce acasă/proiecte/web -
path.extname: Cu această funcție, puteți obține extensia unui fișier dintr-o cale dată.
path.extname('home/projects/web/index.js');
// returnează „.js”
Deschiderea și închiderea fișierelor
-
fs.open: Aceasta este funcția pentru deschiderea sau crearea unui fișier sincron în Node.js. Forma sincronă a fs.deschis este fs.openSync. fs.deschide aacceptă patru argumente care sunt calea fișierului, steaguri, modul deschis și o funcție de apel invers. Steaguri și deschismodul au o valoare implicită și puteți afla mai multe despre ele din Node.js fs.open documentație.
const filePath = path.join (__dirname, '/videos/newVideo.mp4');
// __dirname returnează calea către directorul de lucru curent.
// calea fișierului =/videos/newVideo.mp4 fs.open (filePath, (eroare, fileDescriptor) => {
// gestionează erorile
consolă.log (fileDescriptor); // afișează un număr întreg reprezentând descriptorul fișierului
}) -
fs.close: Este o practică bună să închideți întotdeauna orice fișier deschis atunci când nu mai sunt necesare. Node.js are fs.close functie pentru asta:
fs.open (filePath, (eroare, fileDescriptor) => {
// gestionează erori, cum ar fi „fișierul/directorul nu există”
consolă.log (fileDescriptor);// închide fișierul
fs.close (fileDescriptor, (eroare) => {
// gestionează erorile
consolă.log('Fișier închis cu succes');
});
})
Crearea și ștergerea
-
fs.mkdir: Aceasta funcționează la fel ca mkdir comanda terminal care creează un director nou. Preia o cale, un mod (opțional) și o funcție de apel invers ca parametri. Îl poți folosi astfel:
const dirPath = path.join (__dirname, 'newDirectory');
fs.mkdir (dirPath, (eroare) => {
// gestionează erorile
consolă.log('Director nou creat cu succes');
}); -
fs.unlink: Această funcție elimină sau șterge fișierul de la calea transmisă ca argument. Luați în considerare exemplul de cod de mai jos:
const filePath = path.join (_dirname, 'oldFile.js');
fs.unlink (filePath, (eroare) => {
// gestionează erorile
consolă.log('Fișierul a fost șters cu succes');
}); -
fs.rmdir: Această metodă șterge directorul de la o anumită cale. Este foarte similar în utilizare cu metoda de deconectare:
const dirPath = path.resolve('acasă', 'proiecte', 'web');
fs.rmdir (dirPath, (eroare) => {
// gestionează erorile
consolă.log('Directorul a fost șters cu succes');
})
-
fs.există: The există metoda verifică dacă fișierul la o cale dată există. Implementarea este după cum urmează:
lăsa filePath = path.join (__dirname, 'index.html');
fs.exists (filePath, (exists) => {
consolă.log (există) // adevărat sau fals
}) -
fs.stat: Aceasta este o funcție sincronă care returnează proprietățile unui fișier. Se întoarce un fs. Statistici obiect care expune unele metode de accesare a proprietăților fișierului. Iată un exemplu:
fs.stat('index.js', (eroare, statistici) => {
consolă.log (statistici); // afișează proprietățile de nivel scăzut ale fișierului
stats.isFile(); // returnează adevărat
stats.isDirectory(); // returnează false
})
Ar trebui să utilizați cale metode atunci când lucrați cu căile de fișiere, deoarece vă scutesc de comportamente neașteptate pe platforme. The Node.js fs și Calea Node.js documentația descrie o listă exhaustivă de metode.
Manipularea sistemului de fișiere în Node.js
Vastitatea fs Modulul face foarte ușor accesul și interacțiunea cu fișierele de pe orice sistem de operare. Când îl utilizați împreună cu cale modul, sunteți deschis la mai multe funcționalități și puteți manipula sistemul de fișiere după cum doriți.
Un avantaj major al Node.js este portabilitatea acestuia. Vă puteți dezvolta aplicațiile pe orice platformă și le puteți implementa oriunde fără a vă face griji cu privire la problemele de compatibilitate de bază.