C#获得汉字拼音首字母

文章来自:百度文库

using System;  

using System.Collections.Generic;  

using System.Linq;  

using System.Text;  

 

namespace GetSpell  

{  

    class SpellCode  

    {  

        /// <summary>  

        /// 获取中文串对应的首字母字符串  

        /// </summary>  

        /// <param name="Cnstr">中文串</param>  

        /// <returns>中文串对应的首字母英文串</returns>  

        public static string GetSpellCode(string Cnstr)  

        {  

            string temp = "";  

            for (int i = 0; i < Cnstr.Length; i++)  

            {  

 

                temp += GetSpellCodeAt(Cnstr.Substring(i, 1));  

            }  

            return temp;  

        }  

 

        private static string GetSpellCodeAt(string s)  

        {  

            long iCnChar;  

 

            byte[] ZW = System.Text.Encoding.Default.GetBytes(s);  

            if (ZW.Length == 1)  

            {  

                return s.ToUpper();  

            }  

 

            int i1 = (short)ZW[0];  

            int i2 = (short)ZW[1];  

            iCnChar = i1 * 256 + i2;  

 

            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 <= 53640))  

            {  

                return "X";  

            }  

            else if ((iCnChar >= 53689) && (iCnChar <= 54480))  

            {  

                return "Y";  

            }  

            else if ((iCnChar >= 54481) && (iCnChar <= 55289))  

            {  

                return "Z";  

            }  

            else return ("?");  

        }  

 

 

    }  

 

} 

posted @ 2012-12-13 14:28  学海无涯1999  阅读(165)  评论(0)    收藏  举报