111,129
社区成员
发帖
与我相关
我的任务
分享
protected void Page_Load(object sender, EventArgs e)
{
string title = "北-";
string utf = TransGB2312ToUTF8(title);
Response.Write(string.Format("gb title : {0}", title));
Response.Write("<br />");
Response.Write(string.Format("utf title : {0}", utf));
Response.Write("<br />");
Response.Write(string.Format("trans title : {0}", Trans(utf)));
Response.Write("<br />");
Response.Write(string.Format("trans first title : {0}", TransFirst(utf)));
Response.Write("<br />");
Response.Write(string.Format("trans second title : {0}", TransSecond(utf)));
Response.Write("<br />");
title = "北京";
utf = TransGB2312ToUTF8(title);
Response.Write(string.Format("gb title : {0}", title));
Response.Write("<br />");
Response.Write(string.Format("utf title : {0}", utf));
Response.Write("<br />");
Response.Write(string.Format("trans title : {0}", Trans(utf)));
Response.Write("<br />");
Response.Write(string.Format("trans first title : {0}", TransFirst(utf)));
Response.Write("<br />");
Response.Write(string.Format("trans second title : {0}", TransSecond(utf)));
Response.Write("<br />");
}
/// <summary>
/// GB2312转UTF8
/// </summary>
/// <param name="input">源字符串</param>
/// <returns></returns>
public string TransGB2312ToUTF8(string input)
{
string reResult = string.Empty;
Encoding gb = Encoding.GetEncoding("gb2312");
byte[] bt = Encoding.Convert(Encoding.Default, Encoding.UTF8, gb.GetBytes(input));
reResult = gb.GetString(bt);
return reResult;
}
/// <summary>
/// UTF8转GB2312
/// </summary>
/// <param name="input">源字符串</param>
/// <returns></returns>
public string Trans(string input)
{
string res = input;
UTF8Encoding utf = new UTF8Encoding();
byte[] bt = Encoding.Convert(Encoding.UTF8, Encoding.Default, utf.GetBytes(res));
res = utf.GetString(bt);
return res;
}
/// <summary>
/// UTF8转GB2312(方法一)
/// </summary>
/// <param name="input">源字符串</param>
/// <returns></returns>
public string TransFirst(string input)
{
string res = input;
byte[] dest = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("GB2312"), Encoding.UTF8.GetBytes(res));
res = Encoding.GetEncoding("GB2312").GetString(dest);
return res;
}
/// <summary>
/// UTF8转GB2312(方法二)
/// </summary>
/// <param name="input">源字符串</param>
/// <returns></returns>
public string TransSecond(string input)
{
string res = input;
res = Encoding.GetEncoding("GB2312").GetString(Encoding.UTF8.GetBytes(res));
return res;
}
string name = Encoding.GetEncoding("GB2312").GetString(Encoding.UTF8.GetBytes(yourUtf8String));
byte[] dest = Encoding.Convert(Encoding.UTF8,Encoding.GetEncoding("GB2312"),Encoding.UTF8.GetBytes(yourUtf8String));
string result = Encoding.GetEncoding("GB2312").GetString(dest);