【转】C# 取中文汉字的第一个拼音字母

it2022-05-09  27

public   class  ChsSpell     ... {        /**//// <summary>        /// 取中文汉字的第一个拼音字母        /// </summary>        /// <param name="strText">中字汉字</param>        /// <returns>大写拼音首字母</returns>        public string GetChsSpell(string strText)        ...{            int len = strText.Length;            string myStr = "";            for(int i=0;i<len;i++)            ...{                myStr +=this.getSpell(strText.Substring(i,1));            }            return myStr;        }        private string getSpell(string cnChar)        ...{            byte[] arrCN = Encoding.Default.GetBytes(cnChar);            if(arrCN.Length > 1)            ...{                int area = (short)arrCN[0];                int pos = (short)arrCN[1];                int code = (area<<8+ pos;                int[] areacode = ...{45217,45253,45761,46318,46826,47010,47297,47614,48119,48119,49062,49324,49896,50371,50614,50622,50906,51387,51446,52218,52698,52698,52698,52980,53689,54481};                for(int i=0;i<26;i++)                ...{                    int max = 55290;                    if(i != 25) max = areacode[i+1];                    if(areacode[i]<=code && code<max)                    ...{                        return Encoding.Default.GetString(new byte[]...{(byte)(65+i)});                    }                }                return "*";            }            else return cnChar;        }    }

转载于:https://www.cnblogs.com/feima-lxl/archive/2008/02/20/1075562.html

相关资源:获取汉字拼音的首字母_C#代码

最新回复(0)