Node.js 将rss编码从windows 1255转换为utf 8节点js
我正在尝试解析希伯来语rss,如下所示: 我使用的是feedparser和request,问题是编码是windows-1255而不是UTF-8 因此,我看到的文本如下:����� ������� , 不像普通的希伯来文 我尝试了一些转换(比如iconv-lite),但没有成功 这是我的代码:Node.js 将rss编码从windows 1255转换为utf 8节点js,node.js,utf-8,rss,converter,windows-1255,Node.js,Utf 8,Rss,Converter,Windows 1255,我正在尝试解析希伯来语rss,如下所示: 我使用的是feedparser和request,问题是编码是windows-1255而不是UTF-8 因此,我看到的文本如下:����� ������� , 不像普通的希伯来文 我尝试了一些转换(比如iconv-lite),但没有成功 这是我的代码: function getAll(URL) { var request = require('request'); request(URL, function (error, response, body
function getAll(URL) {
var request = require('request');
request(URL, function (error, response, body) {
if (!error && response.statusCode == 200) {
var allXML = body.substring(body.indexOf('<title>') + ('<title>').length, body.indexOf('</title>'));
var text = iconv.decode(new Buffer(allXML), 'win1255');
console.log("text = ", text);
}
})
函数getAll(URL){
var请求=要求(“请求”);
请求(URL、函数(错误、响应、正文){
如果(!error&&response.statusCode==200){
var allXML=body.substring(body.indexOf('')+('').length,body.indexOf('');
var text=iconv.decode(新缓冲区(allXML),'win1255');
console.log(“text=”,text);
}
})
}
这就是它打印的内容:
text=ן½ן½ן½ן½ן½ן½!ןןןןןןןןןן½ןןןןן½您可以使用诸如或之类的模块在编码之间转换,因为当前节点仅在本机上支持utf8、utf16le、拉丁/二进制、ascii、十六进制和base64。我使用了这个源: }
function getText(URL) {
http.get(URL, function(res) {
var chunks = [];
res.on('data', function(chunk) {
chunks.push(chunk);
});
res.on('end', function() {
var decodedBody = iconv.decode(Buffer.concat(chunks), 'win1255');
console.log(decodedBody);
});
});