Node中的iconv编码转换
Iconv encoding conversion in Node
我在 Node.js 中使用 Iconv 将抓取的 HTML(通过使用 binary
编码的请求)从 SHIFT_JIS
转换为 UTF-8
:
request({url:url, encoding:'binary'}, function (error, res, html) {
var iconv = new Iconv('SHIFT_JIS', 'UTF-8//TRANSLIT//IGNORE')
var converted = iconv.convert(new Buffer(html,'binary')).toString('utf8')
})
我返回的转换如下所示:
é«SnÌ\r\núêXj[J[ÍAVvÉÈ調ȫ³É\r\nå«ÈCpNgð^
虽然预转换看起来像:���[�J�b�g����X�j�[�J�[
我尝试在请求中使用 encoding:null
,但这也不起作用。
编码实际上如上所示工作,这是在请求函数之外处理最终响应的问题。
我在 Node.js 中使用 Iconv 将抓取的 HTML(通过使用 binary
编码的请求)从 SHIFT_JIS
转换为 UTF-8
:
request({url:url, encoding:'binary'}, function (error, res, html) {
var iconv = new Iconv('SHIFT_JIS', 'UTF-8//TRANSLIT//IGNORE')
var converted = iconv.convert(new Buffer(html,'binary')).toString('utf8')
})
我返回的转换如下所示:
é«SnÌ\r\núêXj[J[ÍAVvÉÈ調ȫ³É\r\nå«ÈCpNgð^
虽然预转换看起来像:���[�J�b�g����X�j�[�J�[
我尝试在请求中使用 encoding:null
,但这也不起作用。
编码实际上如上所示工作,这是在请求函数之外处理最终响应的问题。