C# URL编码的转换

Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

字符串query转换为URL编码

public void EnUnicode(string query)
    {
        StringBuilder sb = new StringBuilder();
        byte[] byStr = System.Text.Encoding.UTF8.GetBytes(query); //默认是System.Text.Encoding.Default.GetBytes(str)
        for (int i = 0; i < byStr.Length; i++)
        {
            sb.Append(@"%" + Convert.ToString(byStr[i], 16));
        }
        string result = sb.ToString();
    }

result就是转码后的URL编码

URL编码query转换为UTF8字符串

 public void DeUnicode(string query)
    {
        string result = System.Web.HttpUtility.UrlDecode(query, Encoding.UTF8);
    }

System.Web.HttpUtility.UrlDecode使用这个类需要先添加引用,添加System.Web引用,然后就可以使用该类

添加新评论