• C#取汉字首字母


            #region 取中文首字母
            public static string GetFirstLetter(string paramChinese)
            {
                string strTemp = "";
                int iLen = paramChinese.Length;
                int i = 0;
    
                for (i = 0; i <= iLen - 1; i++)
                {
                    strTemp += GetCharSpellCode(paramChinese.Substring(i, 1));
                }
    
                return strTemp;
    
            }
    
            /// <summary> 
            /// 得到一个汉字的拼音第一个字母,如果是一个英文字母则直接返回大写字母 
            /// </summary> 
            /// <param name="CnChar">单个汉字</param> 
            /// <returns>单个大写字母</returns> 
            private static string GetCharSpellCode(string paramChar)
            {
                long iCnChar;
    
                byte[] ZW = System.Text.Encoding.Default.GetBytes(paramChar);
    
                //如果是字母,则直接返回 
                if (ZW.Length == 1)
                {
                    return paramChar.ToUpper();
                }
                else
                {
                    // get the array of byte from the single char 
                    int i1 = (short)(ZW[0]);
                    int i2 = (short)(ZW[1]);
                    iCnChar = i1 * 256 + i2;
                }
    
                //expresstion 
                //table of the constant list 
                // 'A'; //45217..45252 
                // 'B'; //45253..45760 
                // 'C'; //45761..46317 
                // 'D'; //46318..46825 
                // 'E'; //46826..47009 
                // 'F'; //47010..47296 
                // 'G'; //47297..47613 
    
                // 'H'; //47614..48118 
                // 'J'; //48119..49061 
                // 'K'; //49062..49323 
                // 'L'; //49324..49895 
                // 'M'; //49896..50370 
                // 'N'; //50371..50613 
                // 'O'; //50614..50621 
                // 'P'; //50622..50905 
                // 'Q'; //50906..51386 
    
                // 'R'; //51387..51445 
                // 'S'; //51446..52217 
                // 'T'; //52218..52697 
                //没有U,V 
                // 'W'; //52698..52979 
                // 'X'; //52980..53640 
                // 'Y'; //53689..54480 
                // 'Z'; //54481..55289 
    
                // iCnChar match the constant 
                if ((iCnChar >= 45217) && (iCnChar <= 45252))
                {
                    return "A";
                }
                else if ((iCnChar >= 45253) && (iCnChar <= 45760))
                {
                    return "B";
                }
                else if ((iCnChar >= 45761) && (iCnChar <= 46317))
                {
                    return "C";
                }
                else if ((iCnChar >= 46318) && (iCnChar <= 46825))
                {
                    return "D";
                }
                else if ((iCnChar >= 46826) && (iCnChar <= 47009))
                {
                    return "E";
                }
                else if ((iCnChar >= 47010) && (iCnChar <= 47296))
                {
                    return "F";
                }
                else if ((iCnChar >= 47297) && (iCnChar <= 47613))
                {
                    return "G";
                }
                else if ((iCnChar >= 47614) && (iCnChar <= 48118))
                {
                    return "H";
                }
                else if ((iCnChar >= 48119) && (iCnChar <= 49061))
                {
                    return "J";
                }
                else if ((iCnChar >= 49062) && (iCnChar <= 49323))
                {
                    return "K";
                }
                else if ((iCnChar >= 49324) && (iCnChar <= 49895))
                {
                    return "L";
                }
                else if ((iCnChar >= 49896) && (iCnChar <= 50370))
                {
                    return "M";
                }
    
                else if ((iCnChar >= 50371) && (iCnChar <= 50613))
                {
                    return "N";
                }
                else if ((iCnChar >= 50614) && (iCnChar <= 50621))
                {
                    return "O";
                }
                else if ((iCnChar >= 50622) && (iCnChar <= 50905))
                {
                    return "P";
                }
                else if ((iCnChar >= 50906) && (iCnChar <= 51386))
                {
                    return "Q";
                }
                else if ((iCnChar >= 51387) && (iCnChar <= 51445))
                {
                    return "R";
                }
                else if ((iCnChar >= 51446) && (iCnChar <= 52217))
                {
                    return "S";
                }
                else if ((iCnChar >= 52218) && (iCnChar <= 52697))
                {
                    return "T";
                }
                else if ((iCnChar >= 52698) && (iCnChar <= 52979))
                {
                    return "W";
                }
                else if ((iCnChar >= 52980) && (iCnChar <= 53688))
                {
                    return "X";
                }
                else if ((iCnChar >= 53689) && (iCnChar <= 54480))
                {
                    return "Y";
                }
                else if ((iCnChar >= 54481) && (iCnChar <= 55289))
                {
                    return "Z";
                }
                else return ("?");
            }
    
            #endregion

    原创文字只代表本人某一时间内的观点或结论,本人不对涉及到的任何代码担保。转载请标明出处!

  • 相关阅读:
    mybatis
    Hello mybatis
    linux各种终端类型的区别和概念
    页面对象的定位
    laravel 操作 redis
    Python应用与实践
    Mysql与Oracle区别
    PHP 中 call_user_func 函数 和 call_user_func_array 函数的区别
    php依赖注入
    Linux/Unix 怎样找出并删除某一时间点的文件
  • 原文地址:https://www.cnblogs.com/leleroyn/p/2099289.html
Copyright © 2020-2023  润新知