使用C#对Google和Baidu中文关键词编码解码
2009-08-19 17:44
597 查看
Google和百度的关键词编码是不同的,貌似google是utf-8,baidu是GB2312,有很多种方法可以解决编码,以下列出三种方法:
Uri.unescapeDataString(); 是可以对google的大部分中文关键词 编码进行解码,但是不能解码的编码就会造成乱码,不能解百度关键词。
Microsoft.JScript.GlobalObject.decodeURI();可以解码大部分中文关键词编码,但是仍有少部分不能解码不能解百度关键词,需要Microsoft.JScript引用。
HttpUtility.UrlDecode(str,Encoding.Default);可以解百度的关键词编码,可以解码上述两个方法不能解码google关键词,需要System.Web引用。
要同时解决google和百度关键词解码问题可以使用下列方法:
//str为编码后的google或者百度关键词
try
{
.. Microsoft.JScript.GlobalObject.decodeURI(str.Trim()) ...
}
catch {
... HttpUtility.UrlDecode(str,Encoding.Default) ...
}
Microsoft.JScript.GlobalObject.decodeURI()无法解码时候会报错,捕获以后就可以使用HttpUtility.UrlDecode解码。
Uri.unescapeDataString(); 是可以对google的大部分中文关键词 编码进行解码,但是不能解码的编码就会造成乱码,不能解百度关键词。
Microsoft.JScript.GlobalObject.decodeURI();可以解码大部分中文关键词编码,但是仍有少部分不能解码不能解百度关键词,需要Microsoft.JScript引用。
HttpUtility.UrlDecode(str,Encoding.Default);可以解百度的关键词编码,可以解码上述两个方法不能解码google关键词,需要System.Web引用。
要同时解决google和百度关键词解码问题可以使用下列方法:
//str为编码后的google或者百度关键词
try
{
.. Microsoft.JScript.GlobalObject.decodeURI(str.Trim()) ...
}
catch {
... HttpUtility.UrlDecode(str,Encoding.Default) ...
}
Microsoft.JScript.GlobalObject.decodeURI()无法解码时候会报错,捕获以后就可以使用HttpUtility.UrlDecode解码。
相关文章推荐
- C# URL 中文编码与解码
- js中文编码到C#后台解码
- C# URL 中文编码与解码
- C# 使用base64对字符串进行编码和解码
- 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码
- 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码
- 使用java mail 包收发中文邮件的编码,解码问题以及解决方法
- js url传值C#后台接收中文乱码或浏览器不兼容,C#编码和解码
- js Jquery字符UrlEncode 编码、解码 --C#UrlEncode cookies存 中文
- 用javascript实现Base64编码(解决中文问题C#里解码) 转
- 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码
- javascript ,c#中文编码解码!!!
- Android使用json对中文进行编码 使用php接收时进行解码
- js中文编码到C#后台解码
- 使用Curl进行抓取远程内容时url中文编码问题
- Node.js高级编程:用Javascript构建可伸缩应用(4)2.4 核心API基础-使用Buffer处理,编码,解码二进制数据
- C# HttpRequest 中文编码问题
- c#asp.net url 传递中文参数要使用 System.Web.HttpUtility.UrlEncode 而不能使用Server.UrlEncode
- C# 中文在URL中的编码
- C# base 64图片编码解码