Về cơ bản, bạn cần sử dụng hàm var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 0 hoặc var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 1 từ mô -đun var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 2. Họ trả về nội dung hoàn chỉnh của tệp đã cho, nhưng khác nhau trong hành vi của chúng (không đồng bộ so với đồng bộ).
Nếu chặn Node.js (ví dụ: khi khởi động ứng dụng của bạn) không phải là vấn đề, bạn có thể đi với phiên bản đồng bộ, dễ như:
var fs = require('fs'); var data = fs.readFileSync('/etc/passwd');Nếu bạn cần đi không đồng bộ, mã là như vậy:
var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... });Xin lưu ý rằng trong cả hai trường hợp, bạn có thể đưa ra một đối tượng var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 3 làm tham số thứ hai, ví dụ: Để chỉ định mã hóa để sử dụng. Nếu bạn bỏ qua mã hóa, bộ đệm thô sẽ được trả về:
var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... });Mã hóa hợp lệ là var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 4, var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 5, var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 6, var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 7, var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 8 và var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 9. Ngoài ra còn có mã hóa var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 0, nhưng nó không được sử dụng và không nên được sử dụng nữa. Bạn có thể tìm thêm chi tiết về cách xử lý mã hóa và bộ đệm trong tài liệu thích hợp.
Ngày 21 tháng 2 năm 2020
Bộ đệm Node.js là các đối tượng lưu trữ dữ liệu nhị phân trọng tài. Lý do phổ biến nhất để chạy vào bộ đệm là đọc các tệp bằng Node.js:
const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'Bộ đệm có chức năng var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 1 có một đối số duy nhất var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 2. Hàm var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 1 cho phép bạn chuyển đổi bộ đệm thành các chuỗi có ý nghĩa tùy thuộc vào mã hóa. Ví dụ: nếu bạn đọc một tệp văn bản thông thường bằng var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 4, bạn có thể chuyển đổi bộ đệm thành văn bản từ tệp bằng cách sử dụng var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 5:
const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf.toString('utf8'); // '{ "name": "masteringjs.io", ...}'Một mã hóa phổ biến khác là var fs = require('fs'); fs.readFile('/etc/passwd', function (err, data ) { // ... }); 9, mã hóa bộ đệm dưới dạng chuỗi ký tự var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 7. Mã hóa Hex rất hữu ích vì nó không yêu cầu thoát - bạn có thể đặt bộ đệm được mã hóa hex vào URI mà không sử dụng var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 8 hoặc đặt nó vào JSON mà không thoát var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 9, vì Hex mã hóa chỉ chứa các ký tự chữ và số.
const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf.toString('hex'); // '7b0a2020...'Tạo bộ đệm mới
Bạn có thể tạo bộ đệm từ các chuỗi bằng hàm const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'0. Giống như var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 1, bạn có thể chuyển một đối số var fs = require('fs'); fs.readFile('/etc/passwd', { encoding: 'utf8' }, function (err, data ) { // ... }); 2 cho const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'0.
let buf = Buffer.from('Hello, World', 'utf8'); buf.toString('hex'); // '48656c6c6f2c20576f726c64' buf.toString('utf8'); // 'Hello, World' buf = Buffer.from('48656c6c6f2c20576f726c64', 'hex'); buf.toString('utf8'); // 'Hello, World'Hàm const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'0 cũng chấp nhận các mảng và bộ đệm. Bạn có thể sử dụng const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'0 để sao chép bộ đệm:
const buf2 = Buffer.from(buf); buf2 === buf; // false buf2.toString('utf8'); // 'Hello, World'Hoặc từ một mảng các byte số:
const buf = Buffer.from([ 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64 ]); buf.toString('utf8'); // Hello, WorldVới const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'6
Hàm const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'6 chuyển đổi bộ đệm thành các đối tượng. Dữ liệu thô được mã hóa dưới dạng một loạt các byte mà bạn có thể chuyển đến const fs = require('fs'); const buf = fs.readFileSync('./package.json'); buf instanceof Buffer; // true buf; // '<Buffer 7b 0a 20 20 22 6e 61 6d 65 22 ...>'0.
let buf = Buffer.from('Hello, World', 'utf8'); let obj = { buffer: buf }; obj = JSON.parse(JSON.stringify(obj)); // { type: 'Buffer', // data: [ 72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100 ] } obj.buffer; // To convert from JSON representation back to a buffer, use `Buffer.from()` obj.buffer = Buffer.from(obj.buffer); obj.buffer.toString('utf8'); // 'Hello, World'Thêm hướng dẫn nút
- Sử dụng BCRYPT-JS để mật khẩu băm trong JavaScript
- Làm việc với Thư viện Node.js Assert
- Sửa đổi ủy quyền redirect_uris cho google oauth
- Ngủ trong nodejs
- Chuyển đổi HTML thành PUG
- Chuyển đổi PUG thành HTML
- Cách cài đặt Node.js trên Ubuntu