C#取得汉字的拼音的首字母

简介: static public string GetChineseSpell( string strText ){    int len = strText.Length;    string myStr = "";    for( int i=0;i 1 )    {        int area...
static   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;
}

static   public   string  getSpell(  string  cnChar )
{
    
byte [] arrCN  =  Encoding.Default.GetBytes( cnChar );
    
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  Encoding.Default.GetString(  new   byte []{(  byte  )(  65 + i )} );
            }
        }
        
return   " * " ;
    }
    
else   return  cnChar;
}
目录
相关文章
C#限制文本框只能输入指定的类型(汉字、数字)
C#限制文本框只能输入指定的类型(汉字、数字)
218 0
|
C# 数据格式 JSON
C#序列化的时候将实体进行驼峰命名(第一个首字母小写)
引用的程序集: NewtonSoft 第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性) public class UserInfo { [JsonProperty("id")] pub...
2431 0
|
C#
C# 汉语生成拼音(微软官方方案)
原文:C# 汉语生成拼音(微软官方方案) 项目开发中用户的登录名是管理员在后台输入汉字姓名后自动生成的拼音。例如输入:张三,则登录名自动生成ZHANGSAN。 我在网上查阅了很多方法: 如:http://blog.csdn.net/nengzhong/article/details/4210039 等一些方法,但是在转换过程中,有些中文它是无法识别的。
1557 0
|
C#
实现:C#窗体中的文本框只能输入中文汉字,其他输入无效。问:正则表达式怎么用?
原文:实现:C#窗体中的文本框只能输入中文汉字,其他输入无效。问:正则表达式怎么用? private void textBox1_KeyPress(object sender, KeyPressEventArgs e...
1557 0
C# 汉字转拼音 使用微软的Visual Studio International Pack 类库提取汉字拼音首字母
代码参考该文http://www.cnblogs.com/yazdao/archive/2011/06/04/2072488.html VS2015版本 1.使用Nuget 安装 "SimplifiedChinesePinYinConversion" 2.
1733 0
|
1月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
36 3
|
3天前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
31 12