📅  最后修改于: 2023-12-03 15:17:55.710000             🧑  作者: Mango
在 Node.js 中,Stream 是一种用于处理输入输出数据的抽象接口。Readable Stream 是一种用于从源头读取数据的流接口。readable.setEncoding() 方法用于设置流的编码方式,以便在数据读取过程中自动进行解码。
readable.setEncoding(encoding)
encoding
:一个字符串,表示要使用的字符编码方式。常见的编码方式有 'utf8'
、'ascii'
、'latin1'
等。如果设置为 null
或未提供,则表示数据将不进行编码,以原始的 Buffer
形式进行读取。该方法没有返回值。
const fs = require('fs');
const readableStream = fs.createReadStream('input.txt', 'utf8');
readableStream.setEncoding('utf8');
readableStream.on('data', (chunk) => {
console.log(chunk);
});
readableStream.on('end', () => {
console.log('数据读取完毕。');
});
在上面的例子中,我们创建一个 Readable Stream 对象来读取 input.txt
文件。通过调用 setEncoding('utf8')
方法,我们设置流的编码方式为 UTF-8。这样,在每次读取数据时,都会自动将字节数据解码为 UTF-8 格式的字符串。
readable.setEncoding()
方法适用于可读流(Readable)。setEncoding()
方法,数据会以 Buffer
的形式进行读取,需要手动解码为字符串。