c# textbox设置为通过其他textbox的值来显示内容

就像图里那种可以通过所输入的身份证号来算出年龄和性别,还有身份证辨别正误的方法... 就像图里那种可以通过所输入的身份证号来算出年龄和性别,还有身份证辨别正误的方法 展开
 我来答
阳光的雷咩咩
2016-06-26 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7881万
展开全部

帮你写了个函数,用法也写了:

    class Program
    {
        static void Main(string[] args)
        {
            string id = "身份证";
            bool m = false;
            int a = 0;
            if (CheckID(id, out m, out a))
            {
                Console.WriteLine("{0} {1}岁", 
                m ? "男" : "女", a);
            }
            else
                Console.WriteLine("非法身份证");
            Console.ReadLine();
        }

        static bool CheckID(string id,
            out bool male, out int age
            )
        {
        //注意你抄的时候这个正则字符串是千万不能错,换行也不能
            if (Regex.IsMatch(id,
@"^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$"))
            {
                //第17位若位奇数则性别男
                char sex = id[16];
                male = Convert.ToInt32(sex) % 2 == 1;

                string sbir = id.Substring(6, 8);
                DateTime bir = DateTime.ParseExact(sbir,
                "yyyyMMdd", CultureInfo.InvariantCulture);

                //直接把年份相减得年龄但不是很精确
                age = DateTime.Now.Year - bir.Year;
                return true;
            }
            else
            {
                male = true;
                age = 0;
                return false;
            }
        }
    }
追问
这是个控件  用class定义?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式