/**//// <summary>
/// 获得一个字符串的汉语拼音码,XDesigner编制
/// </summary>
/// <param name="strText">字符串</param>
/// <returns>汉语拼音码,该字符串只包含大写的英文字母</returns>
public static string ToChineseSpell( string strText)
{
if( strText == null || strText.Length == 0 )
return strText ;
System.Text.StringBuilder myStr = new System.Text.StringBuilder();
int index = 0 ;
foreach( char vChar in strText)
{
// 若是字母则直接输出
if( ( vChar >= 'a' && vChar <='z' ) || ( vChar >='A' && vChar <='Z' ) )
myStr.Append( char.ToUpper( vChar ));
else
{
index = (int)vChar - 19968 ;
if( index >= 0 && index < strChineseFirstPY.Length )
myStr.Append( strChineseFirstPY[index]);
}
}//foreach
return myStr.ToString() ;
}// public static string GetChineseSpell( string strText)
/// 获得一个字符串的汉语拼音码,XDesigner编制
/// </summary>
/// <param name="strText">字符串</param>
/// <returns>汉语拼音码,该字符串只包含大写的英文字母</returns>
public static string ToChineseSpell( string strText)
{
if( strText == null || strText.Length == 0 )
return strText ;
System.Text.StringBuilder myStr = new System.Text.StringBuilder();
int index = 0 ;
foreach( char vChar in strText)
{
// 若是字母则直接输出
if( ( vChar >= 'a' && vChar <='z' ) || ( vChar >='A' && vChar <='Z' ) )
myStr.Append( char.ToUpper( vChar ));
else
{
index = (int)vChar - 19968 ;
if( index >= 0 && index < strChineseFirstPY.Length )
myStr.Append( strChineseFirstPY[index]);
}
}//foreach
return myStr.ToString() ;
}// public static string GetChineseSpell( string strText)
/**//// <summary>
/// 汉字拼音首字母列表 本列表包含了20902个汉字,用于配合 ToChineseSpell 函数使用,本表收录的字符的Unicode编码范围为19968至40869, XDesigner 整理
/// </summary>
private static string strChineseFirstPY =
"YDYQSXMWZSSXJBYMGCCZQPSSQBYCDSCDQLDYLYBSSJGYZZJJFKCCLZDHWDWZJLJPFYYNWJJTMYHZWZHFLZPPQHGSCYYYNJQYXXGJ"
+ "HHSDSJNKKTMOMLCRXYPSNQSECCQZGGLLYJLMYZZS
| 对此文章发表了评论 |

