Code ví dụ Node.js Đọc/Ghi/Sửa/Xóa file.
Module File System (fs)
Node.js hoạt động giống như 1 file server
Với module file system, ta có thể làm việc với các file trên hệ thống (đọc, tạo, sửa, xóa và đổi tên file)
Để include module file systerm ta sử dụng lệnh sau:
var fs = require('fs');
(module file system có sẵn khi cài node.js nên bạn không cần phải tải/cài đặt nó nữa)
Node.js đọc file
Để đọc file ta sử dụng method fs.readFile
Ví dụ mình có 1 file hello.html
như sau:
<html> <body> <h1>Node.js File Systerm module</h1> <p>stackjava.com</p> </body> </html>
Bây giờ mình sẽ đọc nó và in ra:
var fs = require('fs'); fs.readFile('hello.html', 'utf8', function(err, data) { console.log(data); });
Kết quả:
Lưu ý: trong method readFile có tham số thứ 2 dùng để chỉ rõ encoding, ở đây mình để là ‘ut8’, nếu bạn không chỉ rõ encoding thì nó sẽ trả về 1 raw buffer. Ví dụ trong trường hợp trên mình bỏ qua tham số encoding thì kết quả như sau:
var fs = require('fs'); fs.readFile('hello.html', function(err, data) { console.log(data); });
Việc đọc file còn áp dụng để hiển thị đọc các file html và hiển thị chúng lên web, ví dụ:
var http = require('http'); var fs = require('fs'); http.createServer(function (req, res) { fs.readFile('hello.html', function(err, data) { res.writeHead(200, {'Content-Type': 'text/html'}); res.write(data); res.end(); }); console.log('server started!') }).listen(8080);
Kết quả:
Node.js tạo file
Để tạo file trong node.js ta có 3 method sau:
fs.appendFile()
fs.open()
fs.writeFile()
Ví dụ:
var fs = require('fs'); fs.open('demo2.txt', 'w', function (err, file) { if (err) throw err; console.log('Saved!'); });
tham số thứ 2 trong method fs.open
là ‘w’ tức là đánh dấu mở file để ghi, nếu file chưa có thì sẽ được tạo mới.
2 method fs.appendFile() và fs.writeFile() dùng cho việc ghi file nhưng trong trường hợp file được ghi chưa có thì nó sẽ tự động tạo ra file mới.
Node.js ghi file / sửa file
Để ghi file trong node.js ta sử dụng 2 method sau:
fs.appendFile()
fs.writeFile()
Method fs.append
sẽ ghi thêm vào cuối file trong khi method fs.writeFile
sẽ ghi đè lên nội dung cũ
Ví dụ:
var fs = require('fs'); fs.appendFile('demo.txt', 'Hello content!', function (err) { if (err) throw err; console.log('Saved!'); });
var fs = require('fs'); fs.writeFile('demo2.txt', 'demo write file - Hello content!', function (err) { if (err) throw err; console.log('Saved!'); });
Node.js xóa file
Để xóa file ta sử dụng method fs.unlink()
, ví dụ xóa file ‘demo2.txt
‘
var fs = require('fs'); fs.unlink('demo2.txt', function (err) { if (err) throw err; console.log('File deleted!'); });
Node.js đổi tên file
Để đổi tên file ta sử dụng method fs.rename()
, ví dụ đổi tên file từ demo.txt
sang demox.txt
var fs = require('fs'); fs.rename('demo.txt', 'demox.txt', function (err) { if (err) throw err; console.log('File Renamed!'); });
Code ví dụ Node.js Đọc/Ghi/Sửa/Xóa file. stackjava.com
Okay, Done!
Download code ví dụ trên tại đây.
References:
https://www.w3schools.com/nodejs/nodejs_filesystem.asp