c# winform 怎么把中文转成%+字母+数字的形式?像百度搜索时的关键词一样,中文的关键词被成%+字母+数字

如题所述

这是一种url编码格式,除了规定的a-Z, A-Z, 0-9以及?&!之类的一些符号之外,其他的字符在url当中必须用编码的形式传递,格式是%+两位二进制代表一个字节。百度用的字符编码是GBK,其他网站大多数用UTF-8。可以用System.Web.HttpUtility.UrlEncode()函数来获得编码后的字符串(需要先添加System.Web的引用,选用的.NET Framework不能是Client Profile):
var encodeString = System.Web.HttpUtility.UrlEncode(str, Encoding.GetEncode("gbk"));

如果是UTF-8编码,也可以直接用System.Uri.EscapeDataString(str)

参考资料:http://msdn.microsoft.com/en-us/library/system.web.httputility.aspx

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-21
你说的是asp.net吧?

string str = "中文";
Server.UrlEncode(str);//编码
Server.UrlDecode(str);//解码

或者

HttpUtility.UrlEncode(str);//编码
HttpUtility.UrlDecode(str);//解码

如果你说的是加密,那就是写个算法了
第2个回答  2011-12-21
加密的原因,可以将任何东西加密。 字母、数字、中文、符号。都可以的
第3个回答  2011-12-21
那应该是加了密的!把加密后的参数进行URL传值。取值时候解密!
相似回答
大家正在搜