汉字转拼音缩写的函数以及其他函数

 

         /// <summary>
        
/// 清空指定页面上所有的控件内容,包括TextBox,CheckBox,CheckBoxList,RadioButton,RadioButtonList。但是不清
        
/// 除如ListBox,DropDownList,因为这样的控件值对当前页面来说还可以用,一般这些控件里都是保存的字典数据。
        
/// Author:Kevin
        
/// 日期:2004-12-02
        
/// </summary>
        
/// <param name="page"> 指定的页面</param> 

         public   static   void  ClearAllContent(System.Web.UI.Control page)
        
{
            
int nPageControls = page.Controls.Count;
            
for (int i = 0; i < nPageControls; i++)
            
{
                
foreach (System.Web.UI.Control control in page.Controls[i].Controls)
                
{
                    
if (control.HasControls())
                    
{
                        ClearAllContent(control); 
                    }

                    
else
                    

                        
if (control is TextBox)
                            (control 
as TextBox).Text = "";

                        
if (control is CheckBox)
                            (control 
as CheckBox).Checked = false;

                        
if (control is RadioButtonList)
                            (control 
as RadioButtonList).SelectedIndex = -1;

                        
if (control is RadioButton)
                            (control 
as RadioButton).Checked = false;

                        
if (control is CheckBoxList)
                        
{
                            
foreach (ListItem item in (control as CheckBoxList).Items)
                            
{
                                item.Selected 
= false;
                            }

                        }

                    }
//if..else
                }
//foreach
            }
//for
        }

 

        /** <summary>
        /// 汉字转拼音缩写
        /// Code By MuseStudio@hotmail.com
        ///
        /// </summary>
        /// <param name="str">要转换的汉字字符串</param>
        /// <returns>拼音缩写</returns>
        public string GetPYString(string str)
        {
            string tempStr = "";
            foreach(char c in str)
            {
                if((int)c >= 33 && (int)c <=126)
                {//字母和符号原样保留
                    tempStr += c.ToString();
                }
                else
                {//累加拼音声母
                    tempStr += GetPYChar(c.ToString());
                }
            }
            return tempStr;
        }

        /** <summary>
        /// 取单个字符的拼音声母
        /// Code By MuseStudio@hotmail.com
        /// 2004-11-30
        /// </summary>
        /// <param name="c">要转换的单个汉字</param>
        /// <returns>拼音声母</returns>
        public string GetPYChar(string c)
        {
            byte[] array = new byte[2];
            array = System.Text.Encoding.Default.GetBytes(c);
            int i = (short)(array[0] - '/0') * 256 + ((short)(array[1] - '/0'));

            if ( i < 0xB0A1) return "*";
            if ( i < 0xB0C5) return "a";
            if ( i < 0xB2C1) return "b";
            if ( i < 0xB4EE) return "c";
            if ( i < 0xB6EA) return "d";
            if ( i < 0xB7A2) return "e";
            if ( i < 0xB8C1) return "f";
            if ( i < 0xB9FE) return "g";
            if ( i < 0xBBF7) return "h";
            if ( i < 0xBFA6) return "g";
            if ( i < 0xC0AC) return "k";
            if ( i < 0xC2E8) return "l";
            if ( i < 0xC4C3) return "m";
            if ( i < 0xC5B6) return "n";
            if ( i < 0xC5BE) return "o";
            if ( i < 0xC6DA) return "p";
            if ( i < 0xC8BB) return "q";
            if ( i < 0xC8F6) return "r";
            if ( i < 0xCBFA) return "s";
            if ( i < 0xCDDA) return "t";
            if ( i < 0xCEF4) return "w";
            if ( i < 0xD1B9) return "x";
            if ( i < 0xD4D1) return "y";
            if ( i < 0xD7FA) return "z";

            return "*";
        } 

 

// 作用:把ListBox中的全部内容转换成一个字符串,各个字段间用,分隔
  
//
  
// 参数:Lists,需要转换的ListBox.items
  
//
  
// 返回值:转换好的字符串
  
//
   public   string  ListToString(ListItemCollection Lists)
  
{
   
string result="";
   
for(int i=0;i<Lists.Count;i++)
   
{
    
if (i==0)
    
{
     result
=Lists[i].Text;
    }

    
else
    
{
     result
=result+","+Lists[i].Text;
    }

   }

   
return result;
  }
 

 

 

//
  
// 作用:输入年月返回月份的天数的集合
  
//
  
// 参数:YYYY年,MM月
  
//
  
// 返回值:本月的天数的ArrayList
  
//
   public   static  ArrayList GetDaysInMonth( int  YYYY, int  MM)
  
{
   
int day=DateTime.DaysInMonth(YYYY,MM);
   ArrayList days
=new ArrayList();
   
for (int i=1;i<=day;i++)
   
{
    days.Add(i);
   }

   
return days;
  }



  
//
  
// 作用:输入选中天数的集合,返回其中的最小和最大的天数
  
//
  
// 参数:dates,把Calendar.SelectedDates传入即可
  
//
  
// 返回值:两个数值的ArrayList,第一个为最小天数,第二个为最大天数
  
//
   public   static  ArrayList GetMinMaxDate(SelectedDatesCollection dates)
  
{
   ArrayList Result
=new ArrayList();
   DateTime min
=new DateTime();
   DateTime max
=new DateTime();
   
for(int i=0;i<dates.Count;i++)
   
{
    
if (i>0)
    
{
     
if(dates[i]<min)
     
{
      min
=dates[i];
     }

     
if(dates[i]>max)
     
{
      max
=dates[i];
     }

    }

    
else
    
{
     min
=dates[i];
     max
=dates[i];
    }

   }

   Result.Add(min);
   Result.Add(max);
   
return Result;
  }

 

调用函数是碰到ListItemCollection 使用ListBox.Items做参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值