NodeJs Basic tut 8 : Đọc ghi file với module fs trong Node.js

NodeJs Basic tut 8 : Đọc ghi file với module fs trong Node.js

Nguồn : toidicode.com Ở bài trước chúng ta đã được tìm hiểu về cách khởi tạo một HTTP server bằng module […]

Learn more »

Nguồn : toidicode.com

Ở bài trước chúng ta đã được tìm hiểu về cách khởi tạo một HTTP server bằng module HTTP trong node.js rồi, bài này mình sẽ giới thiệu với mọi người cách đọc ghi file trong node.js với module fs.Mục Lục

1, Module fs là gì?

-Module fs (viết tắt của file system) là một module được tích hợp sẵn trong node.js có chức năng xử lý file, thư mục trong node.js

2, Khai báo sử dụng module fs.

-Cũng giống như các module khác khi chúng ta muốn sử dụng được nó thì chúng ta cần phải require() nó.

Để require module fs chúng ta sử dụng cú pháp:

require('fs');

-Module fs này chứa rất nhiều các function dùng để xử lý file và thư mục. Để xem dạnh sách các phương thức trong module các bạn chỉ cần console.log() module ra.

VD:

var fs = require('fs'); console.log(fs);

3, Đọc file với module fs.

-Để đọc file với module fs chúng ta sử dụng phương thức readFile() với cú pháp:

  
readFile('pathFile', [option], function(err, data) {    // }); 

Trong đó:

  • pathFile là đường dẫn của file cần đọc.
  • option có thể là chuỗi hoặc mảng chứa các tùy chọn encode hay mode của file, nếu không cần cấu hình thì mọi người có thể bỏ trống.
  • err là biến chứa lỗi nếu có.
  • data là dữ liệu đọc được từ file.

VD: Mình sẽ kết hợp giữa kiến thức của bài trước và bài này để tiến hành đọc code HTML từ một file sang server để hiện thị

Đầu tiên chúng ta sẽ tạo một file code.html với nội dung như sau:

  
<!DOCTYPE html> <html> <head>     <meta charset="utf-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <title>toidicode.com</title>     <link rel="stylesheet" href=""> </head> <style type="text/css" media="screen">     h1{         color: orange;         text-align: center;     } </style> <body>     <h1>Chào mừng bạn đã đến với website toidicode.com</h1> </body> </html> 

Tiếp đó chúng ta cần tạo ra một file server.js cùng cấp với file code.html để khởi tạo server và xử lý file.

// khai báo sử dụng module HTTP var http = require('http'); //Khai báo sử dụng module fs var fs = require('fs'); //Khởi tạo server chạy cổng 8000 http.createServer(function (req, res) {     //định dang response head trả về     res.writeHead('200', {'content-type': 'text/html'});     //đọc file code.html encode utf8     fs.readFile('code.html', 'utf8', function (err, data) {         if (err) throw err;         // in ra nội dung đọc được         res.write(data);         //kết thúc response         res.end();     });  }).listen(8000); 

Sau đó các bạn chạy file server lên và sẽ nhận được kết quả như sau:

4, Ghi file với module fs.

-Để ghi nội dung mới vào một file thì chúng ta sử dụng phương thức writeFile() với cú pháp:

wireFile('filepath', 'content' , option, callback);

Trong đó:

  • filepath là đường dẫn của file cần ghi.
  • content là nội dung mà chúng ta muốn ghi vào file.
  • option có thể là chuỗi hoặc mảng chứa các tùy chọn encode hay mode của file, nếu không cần cấu hình thì mọi người có thể bỏ trống.
  • callback là đoạn xử lý sau khi ghi file.

 VD: Ghi một nội dung vào một file mới có tên writer.html.

var fs = require('fs');  var content="Nội dung này tôi muốn ghi vào file writer.html"; //sử dụng phương thức writeFile để ghi nội dung vào file fs.writeFile('writer.html', content, 'utf8', function (err) {     //Kiểm tra nếu có lỗi thì xuất ra lỗi     if (err)         throw err;     else //nếu không thì hiển thị nội dung ghi file thành công         console.log('Ghi file thanh cong!'); });

5, Lời kết.

-Như vậy mình đã giới thiệu xong với mọi người cơ bản về module fs trong node.js. Module này mình chỉ giới thiệu cơ bản những thứ mình cảm thấy cần thiết đối với mọi người thôi, còn thực sự thì module này hỗ trợ chúng ta khoảng 50-60 phương thức cơ (xem chi tiết).  



Post Views:
28


Lượt xem : 237

Integrations
Users

Share Profile

Anyone at KeenThemes can view
Anyone with link can edit

Give Award

Anyone at KeenThemes can view
Anyone with link can edit

Report User

Let us know why you’re reporing this person
Don't worry, your report is completely anonymous; the person you're
reporting will not be informed that you've submitted it