写个简单的18禁图片查看器

简介

这是一个用C# Winform 写的简易的成人图片查看器,通过输入你的身份证号码来判断你是否年满18岁,如果18岁以上,你则允许查看图片,否则会提示你"未成年",不能查看.

原理

就是通过截取身份证18位号码中的第7到第10位  那是每个公民的出生年份,然后与当前系统的年份相比较,如果差距大于18,说明你成年了,小于18则未成年.

 

界面设计

 

代码

        public void Check18OrNot(string input)
        {
            //首先判断身份证是否为18位
            //如果身份证ID不等于18位,则弹出提示
            if (input.Length != 18)
            {
                MessageBox.Show("身份证必须为长度为18位的整数(可包含字母)!");
                //弹出提示,同时,美女图片的可看性为false,即不能查看
                pbGirl.Visible = false;
                return;
            }
            else  //如果为18位长度,则进行截取其中的年份字符
            {
                //截取里面的出生年份
                //比如 361855199308128866
                //从第7个数开始(索引序号为6) 截取4位数
                string idYear = input.Substring(6, 4);

                //获取当前系统年份并减去身份证中的年份
                //如果小于18,说明你未成年,不能看
                if (DateTime.Now.Year - int.Parse(idYear) < 18)
                {
                    MessageBox.Show("对不起,你未成年,不能查看!");
                    //图片的可见性为false
                    pbGirl.Visible = false;
                    return;
                }
                else
                {
                    //如果通过了,则弹出提示,可以查看.
                    MessageBox.Show("请查看!");
                    //图片可见性为true
                    pbGirl.Visible = true;
                }
            }
        }

        private void btnCheck_Click(object sender, EventArgs e)
        {
            //获取文本框中输入的身份证ID
            string idNumber = txtIdNumber.Text.Trim();
            Check18OrNot(idNumber); //检查用户是否满18岁
        }

 

运行效果测试

开始运行,当前图片为隐藏.

 

随便输入一串号码数字和字母(数量不足18位), 弹出提示 身份证号码不足18位!

 

随便输入一串数字(仅数字且不足18位),弹出提示 身份证号码不足18位!

 

输入准确的18位身份证号码,弹出提示 请查看,同时图片为可见.

 

 

如果你未满18岁,弹出提示:"你未成年,不允许看图片." 图片为不可见!

 

呵呵 一个简单的18禁 图片查看器就写好了! ~~~~~:)

 

posted @ 2011-09-22 17:11  SilverSky(Jason)  阅读(9563)  评论(4编辑  收藏  举报