现在的位置: 首页 > 综合 > 正文

C#返回汉字的首字母

2013年10月05日 ⁄ 综合 ⁄ 共 3216字 ⁄ 字号 评论关闭

using System;
using System.Collections.Generic;
using System.Text;

namespace Common
{
 class HZ
 {
  public static string GetPinyin(string HZ)
  {
   string ret = string.Empty;
   for (int i = 0; i < HZ.Length; i++)
   {
    ret += GetPinyin2(HZ);
   }
   return ret;
  }
  public static string GetPinyin2(string HZ)
  {
   try
   {
    byte[] ZW = new byte[2];
    long HZ_INT;
    ZW = System.Text.Encoding.Default.GetBytes(HZ);
    //   get   the     array   of   byte   from   the   single   char    
    //int   i1   =   (short)(array[0]   -   oxa1);  
    //int   i2   =   (short)(array[1]   -   oxa1);  
    if (ZW.Length <= 1)
    {
     return HZ;
    }
    int i1 = (short)(ZW[0]);
    int i2 = (short)(ZW[1]);
    HZ_INT = 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  

    //   HZ_INT match     the   constant  
    if ((HZ_INT >= 45217) && (HZ_INT <= 45252))
    {
     return "A";
    }
    if ((HZ_INT >= 45253) && (HZ_INT <= 45760))
    {
     return "B";
    }
    if ((HZ_INT >= 45761) && (HZ_INT <= 46317))
    {
     return "C";

    }
    if ((HZ_INT >= 46318) && (HZ_INT <= 46825))
    {
     return "D";
    }
    if ((HZ_INT >= 46826) && (HZ_INT <= 47009))
    {
     return "E";
    }
    if ((HZ_INT >= 47010) && (HZ_INT <= 47296))
    {
     return "F";
    }
    if ((HZ_INT >= 47297) && (HZ_INT <= 47613))
    {
     return "G";
    }
    //**************************  
    if ((HZ_INT >= 47614) && (HZ_INT <= 48118))
    {
     //MessageBox.Show("H");  
     return "H";
    }

    if ((HZ_INT >= 48119) && (HZ_INT <= 49061))
    {
     return "J";
    }
    if ((HZ_INT >= 49062) && (HZ_INT <= 49323))
    {
     return "K";
    }
    if ((HZ_INT >= 49324) && (HZ_INT <= 49895))
    {
     return "L";
    }
    if ((HZ_INT >= 49896) && (HZ_INT <= 50370))
    {
     return "M";
    }

    if ((HZ_INT >= 50371) && (HZ_INT <= 50613))
    {
     return "N";

    }
    if ((HZ_INT >= 50614) && (HZ_INT <= 50621))
    {
     return "O";
    }
    if ((HZ_INT >= 50622) && (HZ_INT <= 50905))
    {
     return "P";

    }
    if ((HZ_INT >= 50906) && (HZ_INT <= 51386))
    {
     return "Q";

    }
    //*********************  
    if ((HZ_INT >= 51387) && (HZ_INT <= 51445))
    {
     return "R";
    }
    if ((HZ_INT >= 51446) && (HZ_INT <= 52217))
    {
     return "S";
    }
    if ((HZ_INT >= 52218) && (HZ_INT <= 52697))
    {
     return "T";
    }
    if ((HZ_INT >= 52698) && (HZ_INT <= 52979))
    {
     return "W";
    }
    if ((HZ_INT >= 52980) && (HZ_INT <= 53640))
    {
     return "X";
    }
    if ((HZ_INT >= 53689) && (HZ_INT <= 54480))
    {
     return "Y";
    }
    if ((HZ_INT >= 54481) && (HZ_INT <= 55289))
    {
     return "Z";
    }
   }
   catch
   {
   }

   return ("");
  }  
 }
}
 

【上篇】
【下篇】

抱歉!评论已关闭.