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

最近也忙了一个段落了,一些学习心得也帖上来大家一起分享下吧。
首先我遇到的一个问题就是一个文本框输入中文名称的。说是输入中文名称,也就是什么都可以输入,但是长度是有所限制的,比如说,一共可以输入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呢,就是长度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值