V širokej škále svojich vstavaných modulov „ fs (Systém súborov) ” modul sa zaoberá súbormi operačného systému spôsobom, ktorý umožňuje ich čítanie, zápis, mazanie, aktualizáciu a premenovanie. Tento modul prichádza s mnohými užitočnými metódami na vykonávanie týchto konkrétnych úloh na základe ich názvov a funkcií, ako napríklad metóda „fs.open()“ otvára súbor asynchrónne, „fs.openSync()“ otvára konkrétny súbor synchrónne atď. .
Tento zápis podrobne vysvetlí použitie metódy „fs.openSync()“ v Node.js.
Predpoklady: Predtým, ako pristúpite k praktickej implementácii akejkoľvek metódy, najprv vytvorte „ .js ” súbor s ľubovoľným názvom a zapíšte doň celý zdrojový kód. V tomto scenári sme vytvorili „ index.js “.
Čo je „fs.openSync()“ v Node.js?
' fs.openSync() “ je preddefinovaná metóda modulu „fs“, ktorá synchrónne otvára súbor na vykonávanie bežných operácií: ako je čítanie, zápis, premenovanie, aktualizácia a vymazanie. Spolu so svojou základnou funkcionalitou táto metóda vracia „ deskriptor súboru ” priamo namiesto vyvolania funkcie spätného volania ako v metóde “fs.open()”.
' deskriptor súboru ” je jednoducho nezáporný celočíselný index v tabuľke deskriptorov súboru. V podstate slúži ako referencia na ľahkú identifikáciu otvoreného súboru v operačnom systéme. Tabuľka deskriptorov súborov je pole v rámci „PCB (Process Control Block)“, ktoré uchováva záznamy všetkých procesov operačného systému.
Ako používať fs.openSync() v Node.js?
Ak chcete použiť synchrónny ' fs.openSync() ” v Node.js, postupujte podľa nižšie uvedenej zovšeobecnenej syntaxe:
fs. openSync ( cesta, príznaky, režim )Parametre použité vo vyššie uvedenej metóde „fs.openSync()“ sú vysvetlené nižšie:
- cesta: Určuje názov a cestu konkrétneho súboru vo forme reťazca, adresy URL alebo vyrovnávacej pamäte.
- vlajky: Označuje reťazec alebo číselnú hodnotu, ktorá určuje operácie, ktoré sa vykonajú s otvoreným súborom. Jeho predvolená hodnota je „ r (čítaj)“ predvolene.
- režim: Označuje oprávnenia súboru, ktoré sú predvolene „0o666 (čitateľné aj zapisovateľné)“.
Návratová hodnota: Funkcia „fs.openSync()“ poskytuje ako vrátenú hodnotu celé číslo, ktoré označuje deskriptor súboru.
Príklad 1: Použitie metódy „fs.openSync()“ s predvoleným príznakom
Tento príklad používa metódu „fs.openSync()“ na otvorenie zadaného súboru na čítanie a vrátenie deskriptora súboru:
konšt fs = vyžadovať ( 'fs' ) ;konšt názov súboru = './myFile.txt' ;
konšt res = fs. openSync ( názov súboru, 'r' ) ;
konzoly. log ( res ) ;
Vysvetlenie vyššie uvedených riadkov kódu je nasledovné:
- Po prvé, „ vyžadovať() ” zahŕňa modul “fs” v aktuálnom projekte Node.js.
- Ďalej, „ názov súboru ” premenná určuje cestu a názov požadovaného súboru, ktorý chce užívateľ otvoriť na čítanie.
- Potom premenná „res“ využíva „ fs.openSync() “, ktorá špecifikuje premennú „filename“ a „ r (čítať) ” príznak ako jeho prvý a druhý argument.
- Nakoniec, „ console.log() ” metóda zobrazí výstup z “ res “premenná.
Výkon
Spustite súbor „index.js“:
index uzla. jsNasledujúci výstup vráti zadaný index súboru do tabuľky deskriptorov súboru:
Príklad 2: Použitie metódy „fs.openSync()“ na otvorenie súboru na zápis
Tento príklad ukazuje praktickú implementáciu metódy „fs.openSync()“ na otvorenie novovytvoreného súboru a jeho pripojenie so špecifikovaným obsahom:
konšt fs = vyžadovať ( 'fs' ) ;konšt fd = fs. openSync ( './sampleFile.txt' , 'In' , 0o666 ) ;
fs. writeSync ( fd, 'Vitajte v Linuxhint!' ) ;
setTimeout ( funkciu ( ) {
konzoly. log ( 'Súbor je teraz uzavretý' ) ;
fs. closeSync ( fd ) ;
} , 10 000 ) ;
konzoly. log ( 'Operácia hotová!' ) ;
Vo vyššie uvedených riadkoch kódu:
- ' fs.openSync() “metóda špecifikuje konkrétny súbor” cesta ',' w(písať) “príznak a predvolený režim” 0o666 (oprávnenia na čítanie aj zápis)“ ako jeho argumenty. Táto metóda otvorí určený súbor na zápis. Ak neexistuje, najprv vytvorí daný súbor.
- ' fs.writeSync() “metóda špecifikuje “ fd (deskriptor súboru)“ a daný „text“, ktorý chce používateľ zapísať do určeného súboru ako jeho prvý a druhý parameter. Táto metóda zapíše citovaný textový príkaz do otvoreného súboru.
- ' setTimeout() ” metóda volá funkciu, v ktorej metóda “console.log()” zobrazí textový príkaz a “ fs.closeSync() ” zatvorí otvorený súbor po zadanom časovom oneskorení.
- Posledná metóda „console.log()“ zobrazuje overovaciu správu.
Výkon
Spustite súbor „index.js“:
index uzla. jsNasledujúci výstup zobrazuje overovaciu správu po synchrónnom dokončení špecifikovanej operácie a zatvorí otvorený súbor po danom oneskorení:
Pre ďalšie overenie prejdite do štruktúry priečinkov aktuálneho projektu Node.js. Nižšie uvedená snímka obrazovky overuje, že súbor „sampleFile.txt“ bol vytvorený spolu so špecifikovaným obsahom:
To je všetko o použití metódy „fs.openSync()“ v Node.js.
Záver
Ak chcete použiť „ fs.openSync() ” v Node.js, zadajte požadovanú “ cesta k súboru “ a „ vlajka ” ako jeho povinné parametre. Táto metóda najskôr otvorí súbor synchrónne a následne na ňom vykoná zadanú operáciu na základe daného príznaku. Používateľ môže vykonávať operácie čítania, zápisu, odstraňovania a pripájania otvoreného súboru. Používa sa hlavne na vrátenie celočíselnej hodnoty, ktorá je známa ako „ deskriptor súboru “. Tento zápis bol rozpracovaný na použitie metódy „fs.openSync()“ v Node.js.