encoding{string} 使用的字符编码。默认值:'utf8'。start{integer} 开始解码的字节偏移量。默认值:0。end{integer} 结束解码的字节偏移量(不包含)。默认值: [buf.length]。- 返回: {string}
根据 encoding 指定的字符编码将 buf 解码成字符串。
传入 start 和 end 可以只解码 buf 的子集。
如果 encoding 为 'utf8',并且输入中的字节序列不是有效的 UTF-8,则每个无效的字节都会由替换字符 U+FFFD 替换。
字符串的最大长度(以 UTF-16 为单位)可查看 [buffer.constants.MAX_STRING_LENGTH]。
const buf1 = Buffer.allocUnsafe(26);for (let i = 0; i < 26; i++) {// 97 是 'a' 的十进制 ASCII 值。buf1[i] = i + 97;}console.log(buf1.toString('utf8'));// 打印: abcdefghijklmnopqrstuvwxyzconsole.log(buf1.toString('utf8', 0, 5));// 打印: abcdeconst buf2 = Buffer.from('tést');console.log(buf2.toString('hex'));// 打印: 74c3a97374console.log(buf2.toString('utf8', 0, 3));// 打印: téconsole.log(buf2.toString(undefined, 0, 3));// 打印: té
