今天发现一个问题,在百度搜索和Google搜索中的关键词编码问题。

“测试”这个词在百度查询是这样的:
http://www.baidu.com/s?cl=3&wd=%B2%E2%CA%D4
这说明在百度”测试”的url编码是”%B2%E2%CA%D4″

在google查询”测试”这个词是:
http://www.google.cn/search?hl=zh-CN&q=%E6%B5%8B%E8%AF%95
这说明在google”测试”的url编码是”%E6%B5%8B%E8%AF%95″

这两种代码的区别是什么?应该如何相互转换呢?

━━━━━━━━━━━━━━━━━━━━━━━━━━
解释说明:

由%号和字母数字组成的乱码,我们可以发现它们有一些规律,即都是三个字符一组,排在最前面的肯定是百分号%。它们不是什么乱码,它们其实是UTF-8编码或者gbk(GB2312)编码,那些百分号(%)后面的数字和字母其实就是16进制数。

中文的gbk(GB2312)编码:
如果是中文的gbk(GB2312)编码,那么它的形式应该是这样的,即一个汉字对应两组%xx,即%xx%xx 。

中文的UTF-8编码:
如果是中文的UTF-8编码,那么它的形式应该是这样的,即一个汉字对应三组%xx,即%xx%xx%xx 。

百度用的是gbk(GB2312)编码
google用的是UTF-8编码

发表评论

/ 快捷键:Ctrl+Enter
加载中……