Modul fs (Sistem Fail) dalam Node.js ialah alat yang berkuasa untuk bekerja dengan sistem fail, membolehkan anda berinteraksi dengan fail dan direktori pada pelayan anda. Ia terbina dalam Node.js, jadi anda tidak perlu memasang apa-apa tambahan untuk menggunakannya. Mari kita terokai cara fs berfungsi dan fungsi utamanya.
Modul fs menyediakan API untuk berinteraksi dengan sistem fail dengan cara yang dimodelkan rapat di sekitar fungsi POSIX standard. Modul ini digunakan untuk tugas seperti membaca dari dan menulis ke fail, mencipta direktori dan banyak lagi.
Untuk menggunakan modul fs, anda perlu memerlukannya pada permulaan skrip Node.js anda:
const fs = require('fs');
Terdapat dua cara utama untuk membaca fail: tak segerak dan segerak.
Kaedah ini tidak menyekat, bermakna ia tidak akan menghentikan pelaksanaan program anda semasa ia membaca fail.
fs.readFile('example.txt', 'utf8', (err, data) => { if (err) { console.error(err); return; } console.log(data); });
Kaedah ini menyekat, bermakna ia akan menghentikan pelaksanaan program anda sehingga fail dibaca.
try { const data = fs.readFileSync('example.txt', 'utf8'); console.log(data); } catch (err) { console.error(err); }
Sama seperti membaca fail, menulis juga boleh dilakukan secara tak segerak atau serentak.
fs.writeFile('example.txt', 'Hello, World!', (err) => { if (err) { console.error(err); return; } console.log('File has been saved!'); });
try { fs.writeFileSync('example.txt', 'Hello, World!'); console.log('File has been saved!'); } catch (err) { console.error(err); }
Jika anda ingin menambah kandungan pada fail sedia ada tanpa menimpanya, gunakan kaedah appendFile.
fs.appendFile('example.txt', '\nAppended Content', (err) => { if (err) { console.error(err); return; } console.log('Content has been appended!'); });
try { fs.appendFileSync('example.txt', '\nAppended Content'); console.log('Content has been appended!'); } catch (err) { console.error(err); }
Untuk memadamkan fail, gunakan kaedah nyahpaut.
fs.unlink('example.txt', (err) => { if (err) { console.error(err); return; } console.log('File deleted!'); });
try { fs.unlinkSync('example.txt'); console.log('File deleted!'); } catch (err) { console.error(err); }
fs.mkdir('newDir', { recursive: true }, (err) => { if (err) { console.error(err); return; } console.log('Directory created!'); });
fs.readdir('newDir', (err, files) => { if (err) { console.error(err); return; } console.log('Files in directory:', files); });
fs.rmdir('newDir', { recursive: true }, (err) => { if (err) { console.error(err); return; } console.log('Directory deleted!'); });
Anda boleh melihat perubahan dalam fail menggunakan kaedah fs.watch:
fs.watch('example.txt', (eventType, filename) => { if (filename) { console.log(`${filename} file Changed!`); } });
Node.js menyediakan strim fs untuk mengendalikan fail besar yang mungkin tidak sesuai dengan memori.
const readStream = fs.createReadStream('example.txt', 'utf8'); readStream.on('data', (chunk) => { console.log(chunk); });
const writeStream = fs.createWriteStream('example.txt'); writeStream.write('Hello, '); writeStream.write('World!'); writeStream.end();
Node.js menyediakan kaedah mudah untuk menyalin fail:
fs.copyFile('source.txt', 'destination.txt', (err) => { if (err) { console.error(err); return; } console.log('File copied successfully!'); });
Modul fs juga mempunyai kaedah berasaskan janji, menjadikannya lebih mudah untuk berfungsi dengan ciri JavaScript moden seperti async/menunggu.
const fsPromises = require('fs').promises; async function readFile() { try { const data = await fsPromises.readFile('example.txt', 'utf8'); console.log(data); } catch (err) { console.error(err); } } readFile();
Modul fs adalah serba boleh dan penting untuk mana-mana aplikasi Node.js yang perlu berinteraksi dengan sistem fail. Dengan memahami pelbagai kaedahnya, mengendalikan strim dengan cekap dan menggunakan amalan terbaik, anda akan dilengkapi dengan baik untuk mengurus operasi fail dalam Node.js dengan berkesan dan selamat.
Ingat untuk merujuk dokumentasi rasmi Node.js untuk mendapatkan maklumat terkini dan ciri tambahan modul fs.
Atas ialah kandungan terperinci Sistem Fail: Modul `fs` Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!