生产上遇到一个问题,澔
字从16进制解码成中文的时候出现乱码。查看代码发现项目中封装的解码工具只支持GB2312
。对超过它编码范围的字无法解码。
本来想自己写一个解码工具,但发现gbk
编码范围太大,而且后面还有个更大的字符集GB18030
,自己写太麻烦。
google
上找到了一个库,iconv-lite
。试用了一下发现可以正常解码。
$ yarn add iconv-lite
const iconv = require('iconv-lite')
const chinese = iconv.decode(Buffer.from('9dbb', 'hex'), 'GB18030')
console.log(chinese) // 澔