代码
#region 取中文首字母   
public static string GetFirstLetter(string paramChinese)   
{   
    
string strTemp = "";   
    
int iLen = paramChinese.Length;   
    
int i = 0;   
  
    
for (i = 0; i <= iLen - 1; i++)   
    {   
        strTemp 
+= GetCharSpellCode(paramChinese.Substring(i, 1));   
    }   
  
    
return strTemp;   
  
}   
  
/// <summary>    
/// 得到一个汉字的拼音第一个字母,如果是一个英文字母则直接返回大写字母    
/// </summary>    
/// <param name="CnChar">单个汉字</param>    
/// <returns>单个大写字母</returns>    
private static string GetCharSpellCode(string paramChar)   
{   
    
long iCnChar;   
  
    
byte[] ZW = System.Text.Encoding.Default.GetBytes(paramChar);   
  
    
//如果是字母,则直接返回    
    if (ZW.Length == 1)   
    {   
        
return paramChar.ToUpper();   
    }   
    
else  
    {   
        
// get the array of byte from the single char    
        int i1 = (short)(ZW[0]);   
        
int i2 = (short)(ZW[1]);   
        iCnChar 
= 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    
  
    
// iCnChar match the constant    
    if ((iCnChar >= 45217&& (iCnChar <= 45252))   
    {   
        
return "A";   
    }   
    
else if ((iCnChar >= 45253&& (iCnChar <= 45760))   
    {   
        
return "B";   
    }   
    
else if ((iCnChar >= 45761&& (iCnChar <= 46317))   
    {   
        
return "C";   
    }   
    
else if ((iCnChar >= 46318&& (iCnChar <= 46825))   
    {   
        
return "D";   
    }   
    
else if ((iCnChar >= 46826&& (iCnChar <= 47009))   
    {   
        
return "E";   
    }   
    
else if ((iCnChar >= 47010&& (iCnChar <= 47296))   
    {   
        
return "F";   
    }   
    
else if ((iCnChar >= 47297&& (iCnChar <= 47613))   
    {   
        
return "G";   
    }   
    
else if ((iCnChar >= 47614&& (iCnChar <= 48118))   
    {   
        
return "H";   
    }   
    
else if ((iCnChar >= 48119&& (iCnChar <= 49061))   
    {   
        
return "J";   
    }   
    
else if ((iCnChar >= 49062&& (iCnChar <= 49323))   
    {   
        
return "K";   
    }   
    
else if ((iCnChar >= 49324&& (iCnChar <= 49895))   
    {   
        
return "L";   
    }   
    
else if ((iCnChar >= 49896&& (iCnChar <= 50370))   
    {   
        
return "M";   
    }   
  
    
else if ((iCnChar >= 50371&& (iCnChar <= 50613))   
    {   
        
return "N";   
    }   
    
else if ((iCnChar >= 50614&& (iCnChar <= 50621))   
    {   
        
return "O";   
    }   
    
else if ((iCnChar >= 50622&& (iCnChar <= 50905))   
    {   
        
return "P";   
    }   
    
else if ((iCnChar >= 50906&& (iCnChar <= 51386))   
    {   
        
return "Q";   
    }   
    
else if ((iCnChar >= 51387&& (iCnChar <= 51445))   
    {   
        
return "R";   
    }   
    
else if ((iCnChar >= 51446&& (iCnChar <= 52217))   
    {   
        
return "S";   
    }   
    
else if ((iCnChar >= 52218&& (iCnChar <= 52697))   
    {   
        
return "T";   
    }   
    
else if ((iCnChar >= 52698&& (iCnChar <= 52979))   
    {   
        
return "W";   
    }   
    
else if ((iCnChar >= 52980&& (iCnChar <= 53688))   
    {   
        
return "X";   
    }   
    
else if ((iCnChar >= 53689&& (iCnChar <= 54480))   
    {   
        
return "Y";   
    }   
    
else if ((iCnChar >= 54481&& (iCnChar <= 55289))   
    {   
        
return "Z";   
    }   
    
else return ("?");   
}  
 
#endregion  

 

posted on 2010-07-08 16:34  小菜鸟软件学习  阅读(81)  评论(0编辑  收藏  举报