zoukankan      html  css  js  c++  java
  • 4月02日 提取汉字首字母,并大写的类

    public class GetStringSpell
       {
           /// <summary>  
           /// 提取汉字首字母  
           /// </summary>  
           /// <param name="strText">需要转换的字</param>  
           /// <returns>转换结果</returns>  
           public 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;
           }
           /// <summary>  
           /// 把提取的字母变成大写  
           /// </summary>  
           /// <param name="strText">需要转换的字符串</param>  
           /// <returns>转换结果</returns>  
           public string GetLowerChineseSpell(string strText)
           {
               return GetChineseSpell(strText).ToLower();
           }
           /// <summary>  
           /// 把提取的字母变成大写  
           /// </summary>  
           /// <param name="myChar">需要转换的字符串</param>  
           /// <returns>转换结果</returns>  
           public  string GetUpperChineseSpell(string strText)
           {
               return GetChineseSpell(strText).ToUpper();
           }
           /// <summary>  
           /// 获取单个汉字的首拼音  
           /// </summary>  
           /// <param name="myChar">需要转换的字符</param>  
           /// <returns>转换结果</returns>  
           public static string getSpell(string myChar)
           {
               byte[] arrCN = System.Text.Encoding.Default.GetBytes(myChar);
               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 System.Text.Encoding.Default.GetString(new byte[] { (byte)(65 + i) });
                       }
                   }
                   return "_";
               }
               else return myChar;
           }
       }

  • 相关阅读:
    android 自己定义ViewGroup实现可记载并呈现选择的ListView
    【iOS】网络载入图片缓存与SDWebImage
    Android eclipse导入项目后出现Unable to resolve target &#39;android-17&#39;解决方法
    leetcode 258: Add Digits
    Mahout算法调用展示平台2.1
    rgocaupbnxj
    代码问题配置
    Tomcat_startup
    Tomcat_shutdown
    Windows环境下Oracle数据库的自动备份脚本自动删除30天前的备份
  • 原文地址:https://www.cnblogs.com/tzq9308/p/4388404.html
Copyright © 2011-2022 走看看