C#判断混合字符串长度的方法(winform)

来源:互联网 发布:算法导论13.3章答案 编辑:程序博客网 时间:2024/05/17 04:26

最近也忙了一个段落了,一些学习心得也帖上来大家一起分享下吧。
首先我遇到的一个问题就是一个文本框输入中文名称的。说是输入中文名称,也就是什么都可以输入,但是长度是有所限制的,比如说,一共可以输入40个字符,中文名字,英文字,数字等等,这里中文名字为一类,英文和数字可以看做一类,那么如何判断他输入的混合字符串长度没有超过40呢.
这里有一个方法,这个方法是在别人那儿看的,我只是改进了下,更便用使用罢了。
下面是这个方法的字义:
    /// <summary>
        /// 判断文本框混合输入长度
        /// </summary>
        /// <param name="str">要判断的字符串</param>
        /// <param name="i">长度</param>
        /// <returns></returns>
        private bool ChangeByte(string str,int i)
        {
            byte[] b = Encoding.Default.GetBytes(str);
            int m = b.Length;
            if (m < i)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
好了,现在你就可以调用这个方法来判断了。
这个方法返回的是一个bool型的值。
可以这样调用:
private void txtSmallNameCN_KeyPress(object sender, KeyPressEventArgs e)
{
     if (ChangeByte(this.txtSmallNameCN.Text.Trim()+e.KeyChar.ToString(),40))
      {
//要做的事情
      }
}
这是在名为txtSmallNameCN文本框的KeyPress事件中调用这个方法,第一个参数就是要判断的字符串,这里是判断的是txtSmallNameCN这个文本框的字符串,40呢,就是长度。
原创粉丝点击