如果这个字符串是从其它地方得到的话,就这样:
string str = "\\u5317\\u4eac";
string[] temp = str.Split(new string[] { "\\u" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < temp.Length; i++)
temp[i] = ((char)Convert.ToInt32(temp[i], 16)).ToString();
string result = string.Join("", temp);
Console.WriteLine(result);
要从汉字转成unicode编码:
string str = "北京";
StringBuilder sb = new StringBuilder();
foreach (char c in str)
sb.AppendFormat("\\u{0}", Convert.ToString((int)c, 16));
Response.Write(sb.ToString());
或者
//中文转为UNICODE字符
string str = "北京";
string outStr = "";
if (!string.IsNullOrEmpty(str))
{
for (int i = 0; i < str.Length; i++)
{
outStr += "//u" + ((int)str[i]).ToString("x");
}
}
又或者
//UNICODE字符转为中文
string str = "//u5317//u4eac";
string outStr = "";
if (!string.IsNullOrEmpty(str))
{
string[] strlist = str.Replace("//","").Split('u');
try
{
for (int i = 1; i < strlist.Length; i++)
{
outStr += (char)int.Parse(strlist[i], System.Globalization.NumberStyles.HexNumber);
}
}
catch (FormatException ex)
{
outStr = ex.Message;
}
}