Skip to content

File System (fs) Module

เหตุผลที่ควรเรียนรู้ fs

ทุกโปรแกรมที่ต้องอ่าน/เขียนไฟล์ เช่น อัปโหลดไฟล์, เก็บ log, อ่าน config จะขาด fs ไม่ได้ มือใหม่ควรเริ่มจาก fs เพราะเป็นพื้นฐานของการจัดการไฟล์ใน Node.js

  • ใช้ fs อ่านไฟล์, เขียนไฟล์, สร้าง/ลบไฟล์และโฟลเดอร์
  • ถ้าเข้าใจ fs จะต่อยอดไปทำ CLI, web server, หรือระบบอัตโนมัติได้ง่าย
  • Node.js มีฟังก์ชัน fs ทั้งแบบ sync/async ให้เลือกใช้ตามความเหมาะสม

แนะนำ fs module

fs เป็น built-in module สำหรับจัดการไฟล์และโฟลเดอร์ เช่น อ่านไฟล์, เขียนไฟล์, ลบไฟล์, สร้างโฟลเดอร์ ฯลฯ รองรับทั้ง synchronous และ asynchronous

ฟังก์ชันหลักที่ใช้บ่อย

fs.readFile(path, [options], callback)

อ่านไฟล์แบบ async

js
const fs = require("fs");
fs.readFile("example.txt", "utf8", (err, data) => {
  if (err) throw err;
  console.log(data);
});

fs.writeFile(file, data[, options], callback)

เขียนไฟล์แบบ async

js
fs.writeFile("output.txt", "Hello, FileSystem!", err => {
  if (err) throw err;
  console.log("File written!");
});

fs.mkdir(path[, options], callback)

สร้างโฟลเดอร์

js
fs.mkdir("new-folder", err => {
  if (err) throw err;
  console.log("Folder created!");
});

ลบไฟล์

js
fs.unlink("output.txt", err => {
  if (err) throw err;
  console.log("File deleted!");
});

กรณีใช้งานจริง

  • อ่าน/เขียนไฟล์ log
  • อัปโหลดไฟล์/ดาวน์โหลดไฟล์
  • สร้างระบบ backup อัตโนมัติ

อ้างอิง