Cách làm việc với file và thư mục trong Node.js

Trong Node.js, chúng ta có thể làm việc với file và thư mục bằng cách sử dụng các module có sẵn như fs (File System). Module này cung cấp các phương thức để thao tác với file, đọc/ghi dữ liệu, tạo và xóa thư mục, và nhiều tác vụ khác liên quan đến hệ thống tệp tin. Trong bài viết này, chúng ta sẽ tìm hiểu cách làm việc với file và thư mục trong Node.js.

Đọc và ghi File

Để đọc một file trong Node.js, chúng ta sử dụng phương thức fs.readFile(). Dưới đây là một ví dụ đơn giản:

const fs = require('fs');

fs.readFile('path/to/file.txt', 'utf8', (err, data) => {
if (err) throw err;
console.log(data);
});

 

Trong ví dụ trên, chúng ta đã sử dụng fs.readFile() để đọc nội dung của file file.txt. Tham số thứ hai là 'utf8' để đọc file dưới dạng văn bản. Hàm callback được truyền vào fs.readFile() sẽ được gọi khi quá trình đọc file hoàn thành.

Để ghi dữ liệu vào một file, chúng ta sử dụng phương thức fs.writeFile(). Dưới đây là một ví dụ:

const fs = require('fs');

const content = 'Hello, world!';

fs.writeFile('path/to/file.txt', content, 'utf8', (err) => {
if (err) throw err;
console.log('File has been written.');
});

 

Trong ví dụ trên, chúng ta đã sử dụng fs.writeFile() để ghi nội dung vào file file.txt. Tham số thứ hai là nội dung cần ghi và tham số thứ ba là 'utf8' để ghi file dưới dạng văn bản. Hàm callback được gọi khi quá trình ghi file hoàn thành.

The Irony in Email Marketing - ReThinc Advertising

Tạo và xóa thư mục

Để tạo một thư mục trong Node.js, chúng ta sử dụng phương thức fs.mkdir(). Dưới đây là một ví dụ:

const fs = require('fs');

fs.mkdir('path/to/directory', (err) => {
if (err) throw err;
console.log('Directory has been created.');
});

 

Trong ví dụ trên, chúng ta đã sử dụng fs.mkdir() để tạo một thư mục tại path/to/directory. Hàm callback được gọi khi quá trình tạo thư mục hoàn thành.

Optimizing Dockerfile for Node.js (Part 2) | Buddy

Kiểm tra sự tồn tại của File hoặc thư mục

Để kiểm tra xem một file hoặc thư mục có tồn tại hay không, chúng ta sử dụng phương thức fs.existsSync(). Dưới đây là một ví dụ:

const fs = require('fs');

if (fs.existsSync('path/to/file.txt')) {
console.log('File exists.');
} else {
console.log('File does not exist.');
}

 

Trong ví dụ trên, chúng ta sử dụng fs.existsSync() để kiểm tra sự tồn tại của file file.txt. Nếu file tồn tại, thông báo “File exists.” sẽ được in ra. Nếu không, thông báo “File does not exist.” sẽ được in ra.

What is XR & what is its potential application to the mobile app market? -  Shortcut

Đọc và ghi Stream

Trong Node.js, chúng ta có thể sử dụng stream để đọc và ghi dữ liệu lớn mà không cần đọc hoặc ghi toàn bộ nội dung cùng một lúc. Điều này giúp tiết kiệm tài nguyên và tăng hiệu suất của ứng dụng.

Để đọc một file sử dụng stream, chúng ta sử dụng fs.createReadStream(). Dưới đây là một ví dụ:

const fs = require('fs');

const readStream = fs.createReadStream('path/to/file.txt', 'utf8');

readStream.on('data', (chunk) => {
console.log(chunk);
});

readStream.on('end', () => {
console.log('Reading has finished.');
});

 

Trong ví dụ trên, chúng ta đã sử dụng fs.createReadStream() để tạo một stream đọc file file.txt. Sự kiện 'data' sẽ được gọi khi dữ liệu được đọc từ stream, và sự kiện 'end' sẽ được gọi khi quá trình đọc stream hoàn thành.

Để ghi dữ liệu vào một file sử dụng stream, chúng ta sử dụng fs.createWriteStream(). Dưới đây là một ví dụ:

const fs = require('fs');

const writeStream = fs.createWriteStream('path/to/file.txt', 'utf8');

writeStream.write('Hello, world!');
writeStream.end();

writeStream.on('finish', () => {
console.log('Writing has finished.');
});

 

Trong ví dụ trên, chúng ta đã sử dụng fs.createWriteStream() để tạo một stream ghi dữ liệu vào file file.txt. Chúng ta đã sử dụng writeStream.write() để ghi dữ liệu và writeStream.end() để kết thúc quá trình ghi stream. Sự kiện 'finish' sẽ được gọi khi quá trình ghi stream hoàn thành.

Laravel vs Node Js: Which One Is Good For What? | Exdera.com

Đây chỉ là một số ví dụ cơ bản về cách làm việc với file và thư mục trong Node.js. Node.js cung cấp nhiều phương thức và tính năng khác để thao tác với hệ thống tệp tin. Bạn có thể tìm hiểu thêm tài liệu chính thức của Node.js để khám phá thêm các khả năng và tùy chỉnh của việc làm việc với file và thư mục trong Node.js.