Viết tệp bằng Node

Cách ghi tệp bằng Node

Cách dễ nhất để ghi vào tệp trong Node.js là sử dụngfs.writeFile()API.

Thí dụ:

const fs = require('fs')

const content = ‘Some content!’

fs.writeFile(’/Users/flavio/test.txt’, content, (err) => { if (err) { console.error(err) return } //file written successfully })

Ngoài ra, bạn có thể sử dụng phiên bản đồng bộfs.writeFileSync():

const fs = require('fs')

const content = ‘Some content!’

try { const data = fs.writeFileSync(’/Users/flavio/test.txt’, content) //file written successfully } catch (err) { console.error(err) }

Theo mặc định, API này sẽthay thế nội dung của tệpnếu nó đã tồn tại.

Bạn có thể sửa đổi giá trị mặc định bằng cách chỉ định một cờ:

fs.writeFile('/Users/flavio/test.txt', content, { flag: 'a+' }, (err) => {})

Các cờ bạn có thể sẽ sử dụng là

  • r+mở tệp để đọc và ghi
  • w+mở tệp để đọc và ghi, định vị luồng ở đầu tệp. Tệp được tạo nếu không tồn tại
  • amở tệp để ghi, định vị luồng ở cuối tệp. Tệp được tạo nếu không tồn tại
  • a+mở tệp để đọc và ghi, định vị luồng ở cuối tệp. Tệp được tạo nếu không tồn tại

(bạn có thể tìm thêm cờ tạihttps://nodejs.org/api/fs.html#fs_file_system_flags)

Nối vào một tệp

Một phương pháp hữu ích để nối nội dung vào cuối tệp làfs.appendFile()(và của nófs.appendFileSync()đối tác):

const content = 'Some content!'

fs.appendFile(‘file.log’, content, (err) => { if (err) { console.error(err) return } //done! })

Sử dụng luồng

Tất cả các phương thức đó ghi toàn bộ nội dung vào tệp trước khi trả lại điều khiển trở lại chương trình của bạn (trong phiên bản không đồng bộ, điều này có nghĩa là thực hiện lệnh gọi lại)

Trong trường hợp này, một lựa chọn tốt hơn là viết nội dung tệp bằng cách sử dụng các luồ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: