Mô-đun Node fs

Mô-đun fs của Node.js cung cấp các chức năng hữu ích để tương tác với hệ thống tệp

Cácfsmô-đun cung cấp rất nhiều chức năng rất hữu ích để truy cập và tương tác với hệ thống tệp.

Không cần phải cài đặt nó. Là một phần của lõi Node, nó có thể được sử dụng bằng cách yêu cầu nó:

const fs = require('fs')

Khi bạn làm như vậy, bạn có quyền truy cập vào tất cả các phương pháp của nó, bao gồm:

  • fs.access(): kiểm tra xem tệp có tồn tại hay không và Node có thể truy cập nó bằng quyền của nó
  • fs.appendFile(): nối dữ liệu vào một tệp. Nếu tệp không tồn tại, nó được tạo
  • fs.chmod(): thay đổi quyền của một tệp được chỉ định bởi tên tệp được truyền. Có liên quan:fs.lchmod(),fs.fchmod()
  • fs.chown(): thay đổi chủ sở hữu và nhóm của tệp được chỉ định bởi tên tệp đã chuyển. Có liên quan:fs.fchown(),fs.lchown()
  • fs.close(): đóng bộ mô tả tệp
  • fs.copyFile(): sao chép một tệp
  • fs.createReadStream(): tạo một luồng tệp có thể đọc được
  • fs.createWriteStream(): tạo một luồng tệp có thể ghi
  • fs.link(): tạo một liên kết cứng mới đến một tệp
  • fs.mkdir(): tạo một thư mục mới
  • fs.mkdtemp(): tạo một thư mục tạm thời
  • fs.open(): đặt chế độ tệp
  • fs.readdir(): đọc nội dung của một thư mục
  • fs.readFile(): đọc nội dung của một tập tin. Có liên quan:fs.read()
  • fs.readlink(): đọc giá trị của một liên kết tượng trưng
  • fs.realpath(): giải quyết con trỏ đường dẫn tệp tương đối (.,..) đến con đường đầy đủ
  • fs.rename(): đổi tên tệp hoặc thư mục
  • fs.rmdir(): xóa một thư mục
  • fs.stat(): trả về trạng thái của tệp được xác định bởi tên tệp được truyền vào. Có liên quan:fs.fstat(),fs.lstat()
  • fs.symlink(): tạo một liên kết tượng trưng mới đến một tệp
  • fs.truncate(): cắt ngắn đến độ dài được chỉ định mà tệp được xác định bởi tên tệp đã truyền. Có liên quan:fs.ftruncate()
  • fs.unlink(): loại bỏ một tệp hoặc một liên kết tượng trưng
  • fs.unwatchFile(): ngừng theo dõi các thay đổi trên tệp
  • fs.utimes(): thay đổi dấu thời gian của tệp được xác định bằng tên tệp đã truyền. Có liên quan:fs.futimes()
  • fs.watchFile(): bắt đầu theo dõi các thay đổi trên tệp. Có liên quan:fs.watch()
  • fs.writeFile(): ghi dữ liệu vào tệp. Có liên quan:fs.write()

Một điều đặc biệt vềfsmô-đun là tất cả các phương thức không đồng bộ theo mặc định, nhưng chúng cũng có thể hoạt động đồng bộ bằng cách thêmSync.

Ví dụ:

  • fs.rename()
  • fs.renameSync()
  • fs.write()
  • fs.writeSync()

Điều này tạo ra sự khác biệt lớn trong luồng ứng dụng của bạn.

Nút 10 bao gồmhỗ trợ thử nghiệmcho mộtlời hứaAPI dựa trên

Ví dụ, chúng ta hãy kiểm trafs.rename()phương pháp. API không đồng bộ được sử dụng với một lệnh gọi lại:

const fs = require('fs')

fs.rename(‘before.json’, ‘after.json’, (err) => { if (err) { return console.error(err) }

//done })

Một API đồng bộ có thể được sử dụng như thế này, với một khối try / catch để xử lý lỗi:

const fs = require('fs')

try { fs.renameSync(‘before.json’, ‘after.json’) //done } catch (err) { console.error(err) }

Sự khác biệt chính ở đây là việc thực thi tập lệnh của bạn sẽ bị chặn trong ví dụ thứ hai, cho đến khi thao tác tệp thành công.

Tải xuống miễn phí của tôiSổ tay Node.js


Các hướng dẫn nút khác: