C#验证码的实现_验证码怎么实现

C#验证码的实现_验证码怎么实现一.编程思想(1).验证码由四位随机数字或者字母组成,此时就要考虑怎么获取随机数(2).各个字符之间怎么进行连接(3).当点击更换时会重新生成四位随机数(4).四位字符的显示二.代码的实现(1).引入伪随机数生成器Random,生成随机数实例化Random:Randomp=newRandom();//表示伪随机数生成器Randomp=newRandom();……

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一.编程思想

(1).验证码由四位随机数字或者字母组成,此时就要考虑怎么获取随机数
(2).各个字符之间怎么进行连接
(3).当点击更换时会重新生成四位随机数
(4).四位字符的显示

二.代码的实现

(1).引入伪随机数生成器 Random,生成随机数

实例化Random: Random p = new Random();//表示伪随机数生成器

 Random p = new Random();//表示伪随机数生成器
(2).储存字符串

当生成字符串时,我们需要对它进行存储,我们声明一个string变量对它进行存储

//验证码是随机的字符串
            string zf = "";
(3).四位验证码字符的生成:
int type = p.Next(1,3);Next返回指定范围内的整数,包小不包大;
zf+=:对四个字符进行连接;
label1.Text = zf; :label中进行显示字符串;
label1.ForeColor = Color.FromArgb(p.Next(0,255), p.Next(0, 255), p.Next(0, 255)); :实现整体颜色随机;
字符数据类型的转换:(char)p.Next(65,91)将int类型转化为char类型; p.Next(0,10).ToString();:将int类型转化为string类型;
 for (int i= 0;i<4;i++)
            { 
   
                //类型首先随机四种 0.大写 1.小写 2.数字
                int type = p.Next(1,3);//返回指定范围内的整数,包小不包大
                if (type==0)
                { 
   
                    zf+=((char)p.Next(97, 123)).ToString();
                    this.BackColor = Color.Green;
                }
                if (type==1)
                { 
   
                    zf+=((char)p.Next(65,91)).ToString();
                }
                if (type==2)
                { 
   
                    zf+=p.Next(0,10).ToString();
                }
                label1.Text = zf;
            }
            label1.ForeColor = Color.FromArgb(p.Next(0,255), p.Next(0, 255), p.Next(0, 255));
        }
(4).整体代码的实现
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 验证码
{ 
   
    public partial class Form1 : Form
    { 
   
        public Form1()
        { 
   
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        { 
   
            Text = "验证码";
            this.BackColor = Color.Green;
            label1.BackColor = Color.White;
        }
        private void button1_Click(object sender, EventArgs e)
        { 
   
            //验证码是随机的字符串
            string zf = "";
            //也就是随机函数对象
            Random p = new Random();//表示伪随机数生成器
            for (int i= 0;i<4;i++)
            { 
   
                //类型首先随机四种 0.大写 1.小写 2.数字
                int type = p.Next(1,3);//返回指定范围内的整数,包小不包大
                if (type==0)
                { 
   
                    zf+=((char)p.Next(97, 123)).ToString();
                    this.BackColor = Color.Green;
                }
                if (type==1)
                { 
   
                    zf+=((char)p.Next(65,91)).ToString();
                }
                if (type==2)
                { 
   
                    zf+=p.Next(0,10).ToString();
                }
                label1.Text = zf;
            }
            label1.ForeColor = Color.FromArgb(p.Next(0,255), p.Next(0, 255), p.Next(0, 255));
        }
    }
}
(5).效果展示图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195482.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • php7使用curl扩展「建议收藏」

    php7使用curl扩展「建议收藏」  前言:最近项目中要调用一些接口,看到网上很多都使用curl,但由于刚开始,php很多的语法都不是很熟悉,例如如何调用第三方函数等,为了使用curl_init()等函数,从安装php的扩展curl开始踩了很多坑,对于环境安装真的是比较头疼的事情,往往可能因为一些小问题而不成功,而且按照网上乱七八糟的博客说的做,真的一点用都没有,特此记录一下,希望以后的编程生涯中尽量少犯这种错误。首先给出环境…

    2022年10月21日
    1
  • 10种流行的Java框架[通俗易懂]

    10种流行的Java框架[通俗易懂]任何框架都是有助于更快更好地开发软件解决方案的工具之一。框架的基本原理不必重新发明轮子。框架使开发人员的工作变得更轻松,并帮助他们专注于业务逻辑,而不必担心通用的代码段。而且由于Java并不是最简单的编程语言之一,因此框架在这里绝对是有用的工具。在本文中,我收集了一些最流行,最有价值的框架,这些框架可以帮助您进行Java应用程序开发。1.Spring这是其他Java框架中的绝对领导者。掌握Spring是Java开发人员职位最普遍的要求之一。造成这种情况的原因很多,但主要的.

    2022年7月7日
    30
  • python汉洛塔_汉诺塔python用递归实现

    python汉洛塔_汉诺塔python用递归实现第一步代码:importturtleclassStack:def__init__(self):self.items=[]defisEmpty(self):returnlen(self.items)==0defpush(self,item):self.items.append(item)defpop(self):returnself.items.pop()defpeek(…

    2022年10月12日
    2
  • VS2008序列号_win10安装sqlserver2008r2安装教程

    VS2008序列号_win10安装sqlserver2008r2安装教程安装目录下:E:\安装包\VS2008TeamSuiteENU90DayTrialX\Setup\setup.sdb用UE打开,这两行写对就行:[ProductKey]PYHYPWXB3BB2CCMV9DX9VDY8T

    2022年8月10日
    10
  • java出现中文乱码_JAVA中文显示乱码问题「建议收藏」

    java出现中文乱码_JAVA中文显示乱码问题「建议收藏」在基于JAVA的编程中,经常会碰到汉字显示乱码的问题,经一番查询现总结如下。在JSP中建议网页编码方式用GBK,这样会方便一些。这个问题是因为JAVA编码方式转换出现了问题,Java中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码,故会出现此问题。我知道一定有很多朋友也会碰到这个问题,所以特就总结了一下,来拿出来让大家一起分享了。自己也做个备忘。…

    2022年7月8日
    18
  • Python之requests的安装

    在windows系统下,只需要输入命令pipinstallrequests,即可安装。   在linux系统下,只需要输入命令sudo  pipinstallrequests,即可安装。   注:关于python第三方库的安装最好少使用easy_install,因为easy_install只能安装不能卸载,如果要卸载需要进入到python的安装

    2022年4月7日
    238

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号