输入汉字字符串索引拼音的首字母

在做项目的时候,输入客户的名字,为了方便索引汉字字符串的拼音首字母,作助记码,于是到网上找了一下,还好,有个单个汉字的处理!
using  System;
using  System.Drawing;
using  System.Collections;
using  System.ComponentModel;
using  System.Windows.Forms;
using  System.Data;

namespace  WinMarket
{
    
///   <summary>
    
///  Classfun 的摘要说明。
    
///   </summary>
     public   class  Classfun
    {
        
private   string  Capstr;

        
public  Classfun()
        {
            
//
            
//  TODO: 在此处添加构造函数逻辑
            
//
        }
        
public   string  ChineseCap( string  ChineseStr)
        {


            
byte [] ZW  =   new   byte [ 2 ];
            
long  ChineseStr_int;
            
string  CharStr, ChinaStr  =   "" ;
            
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;
                    
// 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

                    
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 " ;
                    }

                }
                
else
                {
                    Capstr 
=  ChineseStr;
                    
break ;
                }

                Capstr 
=  Capstr  +  ChinaStr;
            }



            
return  Capstr;

        }


    }
}

转载于:https://www.cnblogs.com/kyovcs/archive/2007/08/16/858908.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值