UTF-8的网站怎样使中文的url编码为gb2312编码,我的这个问题,相信很多从事网站的程序员跟我一样,经常面对。由于编码问题而时常出现乱码问题。UTF-8的网站样使中文的url编码为gb2312编码,终于让我想到啦。
1、直接让中文使用gb2312编码,HttpUtility.UrlEncode("宁希",Encoding.GetEncoding("gb2312"));
2、先让中文转换成unicode,再转换成gb2312编码,该方法还可以将本身是urf-8的编码转换成gb2312尼,如:
byte[] unicodeBytes = unicode.GetBytes(str);
byte[] asciiBytes = Encoding.Convert(unicode, gb2312, unicodeBytes);
char[] asciiChars = new char[gb2312.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
gb2312.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
gb2312info = new string(asciiChars);
以上两个方法,解决了UTF-8的网站怎样使中文的url编码为gb2312编码问题啦。同时gb2312编码的网站也可以使用这些方法转换成utf-8编码的。