📅  最后修改于: 2020-12-24 03:45:40             🧑  作者: Mango
Node.js StringDecoder用于将缓冲区解码为字符串。它类似于buffer.toString(),但为UTF提供了额外的支持。
您需要使用require('string_decoder')来使用StringDecoder模块。
const StringDecoder = require('string_decoder').StringDecoder;
StringDecoder类只有两个方法。
Method | Description |
---|---|
decoder.write(buffer) | It is used to return the decoded string. |
decoder.end() | It is used to return trailing bytes, if any left in the buffer. |
我们来看一个简单的Node.js StringDecoder示例。
文件:stringdecoder_example1.js
const StringDecoder = require('string_decoder').StringDecoder;
const decoder = new StringDecoder('utf8');
const buf1 = new Buffer('this is a test');
console.log(decoder.write(buf1));//prints: this is a test
const buf2 = new Buffer('7468697320697320612074c3a97374', 'hex');
console.log(decoder.write(buf2));//prints: this is a test
const buf3 = Buffer.from([0x62,0x75,0x66,0x66,0x65,0x72]);
console.log(decoder.write(buf3));//prints: buffer