我正在尝试编写一个firefox插件,就遇到了这个问题。
火狐似乎用网站的字符集对搜索引擎的网址进行了编码,假设我们有一个单词"火",它在中文中的意思是“火”,我们用谷歌搜索它,网址是
http://www.google.com/search?q=g+火&ie=utf-8 ... 这个网址是用UTF8解码的,但是如果我去百度,一个字符集是gb2312的中文搜索引擎,我们会得到这个网址。
http://www.baidu.com/s?wd=%BB%F0这里的BBF0是'火‘的gb2312代码,
如何使用firefox API从一些编码(gbk、jp或其他格式)中获取UTF8字符?我在develop.mozilla.org上浏览了nsIScriptableUnicodeConverter部分,但就是找不到合适的方法。
发布于 2011-05-04 15:54:40
好吧,我一定对firefox如何编码它的URL感到困惑,但我发现
var converter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
converter.charset = "gbk";
var car = "%D6%D0%B9%FA";
alert(converter.ConvertToUnicode(unescape("%D6%D0%B0%FA")));会成功的..。
https://stackoverflow.com/questions/5867319
复制相似问题