C#字符串与unicode互相转换

来源:互联网 发布:淘宝爱逛街发布宝贝 编辑:程序博客网 时间:2024/05/14 10:18
/// <summary>        /// 字符串转Unicode        /// </summary>        /// <param name="source">源字符串</param>        /// <returns>Unicode编码后的字符串</returns>        public static string String2Unicode(string source)        {            var bytes = Encoding.Unicode.GetBytes(source);            var stringBuilder = new StringBuilder();            for (var i = 0; i < bytes.Length; i += 2)            {                     stringBuilder.AppendFormat("\\u{0:x2}{1:x2}", bytes[i + 1], bytes[i]);            }            return stringBuilder.ToString();        }        /// <summary>          /// 字符串转为UniCode码字符串          /// </summary>          /// <param name="s"></param>          /// <returns></returns>          public static string StringToUnicode(string s)        {            char[] charbuffers = s.ToCharArray();            byte[] buffer;            StringBuilder sb = new StringBuilder();            for (int i = 0; i < charbuffers.Length; i++)            {                buffer = System.Text.Encoding.Unicode.GetBytes(charbuffers[i].ToString());                sb.Append(String.Format("\\u{0:X2}{1:X2}", buffer[1], buffer[0]));            }            return sb.ToString();        }        /// <summary>          /// Unicode字符串转为正常字符串          /// </summary>          /// <param name="srcText"></param>          /// <returns></returns>          public static string UnicodeToString(string srcText)        {            string dst = "";            string src = srcText;            int len = srcText.Length / 6;            for (int i = 0; i <= len - 1; i++)            {                string str = "";                str = src.Substring(0, 6).Substring(2);                src = src.Substring(6);                byte[] bytes = new byte[2];                bytes[1] = byte.Parse(int.Parse(str.Substring(0, 2), System.Globalization.NumberStyles.HexNumber).ToString());                bytes[0] = byte.Parse(int.Parse(str.Substring(2, 2), System.Globalization.NumberStyles.HexNumber).ToString());                dst += Encoding.Unicode.GetString(bytes);            }            return dst;        }

原创粉丝点击