您的位置:首页 > 其它

将汉字转化为2位大写的16进制Unicode

2013-01-31 19:17 204 查看
说明:

str.ToString("x") : 转为1位16进制小写

str.ToString("X") : 转为1位16进制大写

str.ToString("X2"):转为2位16进制大写

publicstaticstring StringToUnicode16(string text, string prefixalChar, string splitChar)
{
var sb =new StringBuilder();
if (string.IsNullOrEmpty(text))
{
returnstring.Empty;
}

foreach (var t in text)
{
var by = Encoding.Unicode.GetBytes(Convert.ToString(t));

if (by.Length !=2)
{
sb.Append(Convert.ToString(t));
continue;
}

//只处理中文
if (by[1] ==0)
{
sb.Append(Convert.ToString(t));
continue;
}

sb.Append(prefixalChar);
sb.Append(by[1].ToString("X2"));
sb.Append(by[0].ToString("X2"));
sb.Append(splitChar);
}

return sb.ToString();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: