zoukankan      html  css  js  c++  java
  • C#获取汉字首字母

         /// <summary>
    /// 这个方法是用来获得一个字符串的每个字的拼音首字母组成所需的字符串
    /// </summary>
    /// <param name="strText"></param>
    /// <returns></returns>
    private string GetChineseSpell(string strText)
    {
    int len = strText.Length;
    string myStr = "";
    for (int i = 0; i < len; i++)
    {
    myStr
    += getSpell(strText.Substring(i, 1));

    }

    return myStr.ToLower();
    }

    /// <summary>
    /// 用来获得一个字的拼音首字母
    /// </summary>
    /// <param name="cnChar"></param>
    /// <returns></returns>
    private string getSpell(string cnChar)
    {
    //将汉字转化为ASNI码,二进制序列
    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;
    }

      

  • 相关阅读:
    0302思考并回答一些问题
    0104 自下而上
    1203 有穷自动机的构造
    11 10我的评论
    1029 C语言文法翻译(2)
    1014 对编译程序的心得与总结
    我们小组的编译程序
    0921 词法分析程序
    0909 关于编译原理的思考
    数据库设计之数据库设计三大范式
  • 原文地址:https://www.cnblogs.com/tianzhenyun/p/2171258.html
Copyright © 2011-2022 走看看