分享、学习、提高
2007/05/23 11:05
文章作者:Enjoy 转载请注明原文链接。
一个UTF-8编码的站点,在页面中需要有如下的链接:

查看更多关于"给不起的爱"的内容,关键词“给不起的爱”链接
http://www.baidu.com/baidu?word=给不起的爱

但是,点过去后搜索框显示的关键词是乱码:(

如果直接在地址栏输这个网址,确又正常。

将中文rawurlencode一下,变成

http://www.baidu.com/baidu?word=%E7%BB%99%E4%B8%8D%E8%B5%B7%E7%9A%84%E7%88%B1

同样如此。

知道这是因为UTF-8下一个中文三个字符,而Baidu使用GB2312编码,一个中文两个字符的原因,但是怎么解决呢?Google就可以直接调用,因为其本身就是UTF8的,如果是gb2312的页面过去,则只要在网址后面加上&ie=GB2312就可以。Baidu不知道要怎么解决,难道要将UTF-8产生的字符通过函数转换为gb2312的编码?在Baidu的帮助中没能找到方法。

搜索了一下,从一大堆无用信息中找到了一条,解决了这个问题:)

方法是在后面加上&ie=utf-8,呵呵Baidu也早就有解决这个问题的方法了。

于是最终链接地址变成:
http://www.baidu.com/baidu?word=%E7%BB%99%E4%B8%8D%E8%B5%B7%E7%9A%84%E7%88%B1&ie=utf-8
9enjoy Email
2009/01/07 14:04
在utf-8写不了中文这样也可以了?
万年历之家不知
cry
seo Homepage
2008/09/26 13:42
好 支持 写的不错
西部龙
2007/09/21 14:47
很感谢!
叶开
2007/08/18 23:01
gringrin
太感谢了,我为这个问题犯了好几天的愁了,终于在你这里找到答案,非常感谢阿
分页: 1/1 第一页 1 最后页
发表评论
表情
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
昵称   密码   游客无需密码
网址   电邮   [注册]
               

验证码 不区分大小写