• c# unicode 编码 中文转换 已测试(转)


        中文传参时因为编码不同经常凌乱风中,故传前编成unicode码来过度是一个不错的解决方法

            /// <summary>

            /// 中文转unicode
            /// </summary>
            /// <returns></returns>
            public static string unicode_0(string str)
            {
                string outStr = "";
                if (!string.IsNullOrEmpty(str))
                {
                    for (int i = 0; i < str.Length; i++)
                    {
                        outStr += "/u" + ((int)str[i]).ToString("x");
                    }
                }
                return outStr;
            }
            /// <summary>
            /// unicode转中文
            /// </summary>
            /// <returns></returns>
            public static string unicode_1(string str)
            {
                string outStr = "";  
                if (!string.IsNullOrEmpty(str))  
                {  
                    string[] strlist = str.Replace("/","").Split('u');  
                    try  
                    {  
                        for (int i = 1; i < strlist.Length; i++)  
                        {  
                            //将unicode字符转为10进制整数,然后转为char中文字符  
                            outStr += (char)int.Parse(strlist[i], System.Globalization.NumberStyles.HexNumber);  
                        }  
                    }  
                    catch (FormatException ex)  
                    {  
                        outStr = ex.Message;  
                    }  
                }
                return outStr;

            }

            /// <summary>
            /// unicode转中文(符合js规则的)
            /// </summary>
            /// <returns></returns>
            public static string unicode_js_1(string str)
            {
                string outStr = "";
                Regex reg = new Regex(@"(?i)\u([0-9a-f]{4})");
                outStr = reg.Replace(str, delegate(Match m1)
                {
                    return ((char)Convert.ToInt32(m1.Groups[1].Value, 16)).ToString();
                });
                return outStr;
            }
            /// <summary>
            /// 中文转unicode(符合js规则的)
            /// </summary>
            /// <returns></returns>
            public static string unicode_js_0(string str)
            {
                string outStr = "";
                string a = "";
                if (!string.IsNullOrEmpty(str))
                {
                    for (int i = 0; i < str.Length; i++)
                    {
                        if (Regex.IsMatch(str[i].ToString(), @"[u4e00-u9fa5]")) { outStr += "\u" + ((int)str[i]).ToString("x"); }
                        else { outStr += str[i]; }
                    }
                }
                return outStr;
            } 

    转自:http://blog.csdn.net/lbx541575387/article/details/6710815

  • 相关阅读:
    51单片机 第五节 模块化编程与LCD调试工具
    51单片机 第七节 定时器
    第四届蓝桥杯试题
    洛谷题单 【算法17】搜索
    HttpPostedFile 和 HttpPostedFileBase 你真的了解嘛?
    Juqery让世界更美好超级简单实用的(上、下)自动翻的最佳效果,有图为证!
    图片防盗链实现
    gravity与layout_gravity的区别
    color.xml
    SOAPAction Header!
  • 原文地址:https://www.cnblogs.com/lcyuhe/p/4810156.html
Copyright © 2020-2023  润新知