标签:style blog http color 使用 for ar 代码
直接使用例如:http://www.abc.php?name=中文符 ,客户端调用,在服务端修改后,会出现乱码,
而windows phone 又不能直接支持gb2312, 经过大量分析和验证,发现 凡事 经过”从汉字转换到16进制”后,
即可成功实现转码,代码如下:
string text = "中文符";
string url1 = "http://www.abc.php?name=";
string url2 = url1 + Utf8ToGb2312(text, true);
/// <summary>
/// 从汉字转换到16进制
/// </summary>
/// <param name="argStrUtf8"></param>
/// <param name="argUseSeparator">是否每中文字符间用%分隔</param>
/// <returns></returns>
public static string Utf8ToGb2312(string argStrUtf8, bool argUseSeparator = true)
{
if ((argStrUtf8.Length % 2) != 0)
{
argStrUtf8 += " ";//空格
}
System.Text.Encoding chs = DBCSEncoding.GetDBCSEncoding("gb2312");//System.Text.Encoding.GetEncoding(charset);
byte[] bytes = chs.GetBytes(argStrUtf8);
string str = argUseSeparator ? "%" : "";
for (int i = 0; i < bytes.Length; i++)
{
str += string.Format("{0:X}", bytes[i]);
if (argUseSeparator && (i != bytes.Length - 1))
{
str += string.Format("{0}", "%");
}
}
return str.ToUpper();
}
详细说明:http://wp.662p.com/thread-8250-1-1.html
WP8实现UTF8 to GB2312转码的功能,布布扣,bubuko.com
标签:style blog http color 使用 for ar 代码
原文地址:http://www.cnblogs.com/lianweikj02/p/3891749.html