English Sentence Loading...
英语句子加载中...

将汉字转换成拼音第一个字母

程序代码 程序代码
/// <summary>  
/// 将汉字转换成拼音第一个字母  
/// </summary>  
/// <param name="ChineseStr">中文字符串</param>  
/// <returns>返回首拼音字母</returns>  
public static string ChineseCap(string ChineseStr)  
{  
    string Capstr = "";  
    byte[] ZW = new byte[2];  
    long ChineseStr_int;  
    string CharStr, ChinaStr = "";  
    string Digit = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ-_";  
  
    if (Digit.IndexOf(ChineseStr[0], 0) != -1)  
        {  
            return Char.ToUpper(ChineseStr[0]).ToString();  
        }          
    for (int i = 0; i <= ChineseStr.Length - 1; i++)  
    {  
        CharStr = ChineseStr.Substring(i, 1).ToString();  
        ZW = System.Text.Encoding.Default.GetBytes(CharStr);  
        // 得到汉字符的字节数组  
        if (ZW.Length == 2)  
        {  
            int i1 = (short)(ZW[0]);  
            int i2 = (short)(ZW[1]);  
            ChineseStr_int = i1 * 256 + i2;  

            #region 参数  
            //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  

            #endregion  

            #region 判断  
            if ((ChineseStr_int >= 45217) && (ChineseStr_int <= 45252))  
            {  
                ChinaStr = "A";  
            }  
            else if ((ChineseStr_int >= 45253) && (ChineseStr_int <= 45760))  
            {  
                ChinaStr = "B";  
            }  
            else if ((ChineseStr_int >= 45761) && (ChineseStr_int <= 46317))  
            {  
                ChinaStr = "C";  
  
            }  
            else if ((ChineseStr_int >= 46318) && (ChineseStr_int <= 46825))  
            {  
                ChinaStr = "D";  
            }  
            else if ((ChineseStr_int >= 46826) && (ChineseStr_int <= 47009))  
            {  
                ChinaStr = "E";  
            }  
            else if ((ChineseStr_int >= 47010) && (ChineseStr_int <= 47296))  
            {  
                ChinaStr = "F";  
            }  
            else if ((ChineseStr_int >= 47297) && (ChineseStr_int <= 47613))  
            {  
                ChinaStr = "G";  
            }  
            else if ((ChineseStr_int >= 47614) && (ChineseStr_int <= 48118))  
            {  
  
                ChinaStr = "H";  
            }  
  
            else if ((ChineseStr_int >= 48119) && (ChineseStr_int <= 49061))  
            {  
                ChinaStr = "J";  
            }  
            else if ((ChineseStr_int >= 49062) && (ChineseStr_int <= 49323))  
            {  
                ChinaStr = "K";  
            }  
            else if ((ChineseStr_int >= 49324) && (ChineseStr_int <= 49895))  
            {  
                ChinaStr = "L";  
            }  
            else if ((ChineseStr_int >= 49896) && (ChineseStr_int <= 50370))  
            {  
                ChinaStr = "M";  
            }  
  
            else if ((ChineseStr_int >= 50371) && (ChineseStr_int <= 50613))  
            {  
                ChinaStr = "N";  
  
            }  
            else if ((ChineseStr_int >= 50614) && (ChineseStr_int <= 50621))  
            {  
                ChinaStr = "O";  
            }  
            else if ((ChineseStr_int >= 50622) && (ChineseStr_int <= 50905))  
            {  
                ChinaStr = "P";  
  
            }  
            else if ((ChineseStr_int >= 50906) && (ChineseStr_int <= 51386))  
            {  
                ChinaStr = "Q";  
  
            }  
  
            else if ((ChineseStr_int >= 51387) && (ChineseStr_int <= 51445))  
            {  
                ChinaStr = "R";  
            }  
            else if ((ChineseStr_int >= 51446) && (ChineseStr_int <= 52217))  
            {  
                ChinaStr = "S";  
            }  
            else if ((ChineseStr_int >= 52218) && (ChineseStr_int <= 52697))  
            {  
                ChinaStr = "T";  
            }  
            else if ((ChineseStr_int >= 52698) && (ChineseStr_int <= 52979))  
            {  
                ChinaStr = "W";  
            }  
            else if ((ChineseStr_int >= 52980) && (ChineseStr_int <= 53640))  
            {  
                ChinaStr = "X";  
            }  
            else if ((ChineseStr_int >= 53689) && (ChineseStr_int <= 54480))  
            {  
                ChinaStr = "Y";  
            }  
            else if ((ChineseStr_int >= 54481) && (ChineseStr_int <= 55289))  
            {  
                ChinaStr = "Z";  
            }  

            #endregion  
  
        }  
        else  
        {  
            Capstr = ChineseStr;  
            break;  
        }  
  
        Capstr = Capstr + ChinaStr;  
    }  
  
    return Capstr;  
  
}




评论: 0 | 引用: 0 | 查看次数: 131
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: = 4 + 4  
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭