Isto vrijedi i za datoteku, njezine operacije mogu uključivati mijenjanje datoteke, umetanje podataka u datoteku ili brisanje jednog. Cijela će aplikacija biti u kvaru ako programer primijeni operacije datoteka preko direktorija ili obrnuto.
Ovaj će članak ilustrirati pristupe otkrivanju je li navedeni put datoteka ili direktorij pokrivajući ove metode:
- Metoda 'statSync()' za otkrivanje staze koja vodi do imenika ili datoteke
- Metoda “stat()” za otkrivanje staze koja vodi do imenika ili datoteke
Kako otkriti da je navedeni put datoteka ili direktorij u Node.js?
Postoje dvije metode koje nudi ' fs ” modul naime “ isDirectory() ' i ' isFile() ” čiji je jedini cilj provjera vodi li navedeni put do datoteke ili direktorija. Ove se metode koriste u sinkronim i asinkronim scenarijima pomoću ' statSync() ' i ' stat() ” metode. Ove dvije metode prikazane su u nastavku za otkrivanje vodi li navedeni put do datoteke ili direktorija.
Metoda 1: Metoda 'statSync()' za otkrivanje staze koja vodi do direktorija ili datoteke
' statSync() ” metoda koju pruža “ fs ” modul se u osnovi koristi za izvođenje sinkronih operacija. Ova metoda u našem slučaju pohranjuje instancu navedene staze samo jednom. Zatim dodjeljuje ' isDirectory() ' i ' isFile() ” metode za vraćanje vodi li navedeni put do direktorija ili datoteke.
Posjetimo donji isječak koda za praktičnu implementaciju metode 'statSync()':
konst fsObj = zahtijevati ( 'fs' ) ;
neka pathFile = fsObj. statSync ( '/Users/kahou/Documents/readlineProj/mcu.db' ) ;
konzola. log ( 'Je li navedena staza vodi do datoteke? ' + pathFile. isFile ( ) ) ;
putDir = fsObj. statSync ( '/Users/kahou/Documents/readlineProj' ) ;
konzola. log ( 'Je li navedena staza vodi do imenika? ' + putDir. isDirectory ( ) ) ;
Objašnjenje za gore navedeni kod navedeno je u nastavku:
- Prvo uvezite ' fs ' modul i pohranite njegovu instancu u ' fsObj ” varijabla.
- Zatim pozovite ' statSync() ' metodom pomoću ' fsObj ” varijable i proslijedite odabrani put unutar njezinih zagrada. Pohranite referencu ovog puta unutar ' pathFile ” varijabla.
- Zatim dodijelite ' isFile() ' metoda s ' pathFile ” za vraćanje Booleove vrijednosti koja će pokazati vodi li navedeni put do datoteke ili ne.
- Nakon toga ponovno pozovite ' statSync() ” i prođite novu stazu.
- Na kraju priložite ' isDirectory() ' s vrijednošću koju vraća ' startSync() ” metoda.
Sada izvršite trenutnu datoteku pomoću donje naredbe:
'čvor
Na primjer, izvršili smo datoteku 'app.js':
Izlaz pokazuje vrijednost ' pravi ” vraćeno znači da su navedene staze za mapu i da je datoteka otkrivena.
Metoda 2: Metoda 'stat()' za otkrivanje staze koja vodi do direktorija ili datoteke
Druga metoda koja savršeno funkcionira za asinkrono okruženje poznata je kao ' stat() ' metoda koju pruža ' fs ” modul. Također koristi isti ' isFile() ' i ' isDirectory() ” metode, ali zbog svoje asinkrone prirode, jedan se put može proslijediti objema metodama. Ima dva parametra, prvi je staza pohrane, a drugi je funkcija povratnog poziva koja izvodi neke operacije preko navedene staze:
konst fsObj = zahtijevati ( 'fs' ) ,testPath = '/Users/kahou/Documents/readlineProj'
// Koristi metodu stat().
fsObj. stat ( testPath , ( greška , statObj ) => {
ako ( ! greška ) {
ako ( statObj. isFile ( ) ) {
konzola. log ( ' \n Da! Navedeni put vodi do datoteke? ' ) ;
}
drugo ako ( statObj. isDirectory ( ) ) {
konzola. log ( ' \n Da! Dani put vodi do imenika? ' ) ;
}
}
drugo
bacanje greška ;
} ) ;
Objašnjenje gore navedenog koda prikazano je u nastavku:
- Prvo uvezite ' fs ' modul i pohranite njegovu instancu u ' fsObj ” varijabla. Stvoriti ' testPath ” varijabla koja pohranjuje put koji je dao ispitivač.
- Sada pozovite ' stat() ' metodu i proslijedite ' testPath ” kao prvi parametar i funkcija povratnog poziva kao drugi parametar.
- Funkcija povratnog poziva sadrži ' greška ” kao prvi parametar i “ statObj ” kao drugi. ' greška ” sadrži pogreške koje se pojavljuju tijekom izvođenja, a “startObj” ima navedeni put.
- Unutar funkcije upotrijebite ' ako ” naredba koja se pokreće ako nije pronađena pogreška.
- ' ugniježđeni ako ' Izjave se koriste za dodjelu ' isFile() ' i ' isDirectory() ' metode s ' statObj ”.
- Ako se metode vrate ' pravi ” samo tada se taj odjeljak izvršava i u skladu s tim prikazuje poruke o uspjehu.
Nakon izvršavanja gornje skripte, terminal izgleda ovako:
Kao što vidite dani put je sada otkriven i potvrđuje da navedeni put vodi do direktorija.
Zaključak
Da biste otkrili je li navedeni put put direktorija ili datoteke u NodeJs, metode ' isFile() ' i ' isDirectory ' su korišteni. Staze koje su dostupne ovim metodama osigurava ' statSync() ' i ' stat() ' metode ' fs ” Modul NodeJs. Ove metode pohranjuju pružene staze na sinkroni i asinkroni način. Ovaj blog je objasnio postupak otkrivanja vodi li navedeni put do datoteke ili direktorija u NodeJS.