最近在玩node.js,用http客户端获取的html很多都是gbk或gb2312编码的,网上找了下,都说要使用iconv,想想太麻烦,在维基百科找了下,找到了unicode-gbk编码映射,以及unicode-utf8的算法,于是将映射表当下来搞了个编码转换的工具,代码也很少,不到100行
获取:
npm install encoding_convertor
使用:
var ec = require('encoding_convertor');
ec.convert(src, 'gbk', function(err, result){
console.log(result);
});
//src: gbk编码的buffer, 第二个参数是要转换的编码,回调函数 result: utf-8编码的字符串
现在已经内置了gbk的编码映射表,如果想支持其它的编码可以去维基百科搞,不过格式一定要是otherencoding:unicode\n
gbk映射来源:ICU:UNICODE-GBK table
unicode-utf8算法来源:utf-8编码 维基百科