C#實現(xiàn)驗證碼功能
更新時間:2021年07月21日 12:23:58 作者:Just Do Its
這篇文章主要為大家詳細介紹了C#實現(xiàn)驗證碼功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了C#實現(xiàn)驗證碼功能的具體代碼,供大家參考,具體內(nèi)容如下
分析
- 需要四個字符(字母(大小寫)+數(shù)字)
- 將四個字符連接成字符串
- 將連接的字符串寫入label中,在label中顯示驗證碼
解決辦法
1、創(chuàng)建隨機數(shù)生成器(Random)
2、使用for循環(huán)4次(驗證碼四個字符)
3、將4個隨機字母隨機數(shù)字連接成一個字符串
4、將鏈接好的字符串寫入label中
所用到的屬性,循環(huán)以及數(shù)據(jù)類型的轉(zhuǎn)換
- 用到Random隨機生成器類(先實例化)Random s = new Random();
- FromArgb方法label1.ForeColor = Color.FromArgb(s.Next(0, 255), s.Next(0, 255), s.Next(0, 255));字體隨機顏色
- 用到for循環(huán)(驗證碼為四位所以循環(huán)四次)
- 將數(shù)字轉(zhuǎn)化為字符(大寫字母) (char)s.Next(65,91)顯式轉(zhuǎn)換
- 將字符轉(zhuǎn)化為字符串(ToString方法)字符后面直接點ToString((char)s.Next(65,91)).Tostring
- 將數(shù)字轉(zhuǎn)化為字符串(ToString)
具體代碼如下:
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 Test_Security_Code
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//分析:驗證碼為4個字符,產(chǎn)生數(shù)字大小寫字母隨機,將四個字符連接成一個字符串,將字符串寫入Label中
string c = "";//初始化驗證碼
Random s = new Random();//隨機數(shù)生成器
for (int i = 0; i < 4; i++)//組成(隨機四位0~9數(shù)字、大小寫字母)
{
int b = s.Next(0,3);//b表示驗證碼類型,此隨機數(shù)為0、1、2
//驗證碼是數(shù)字是字母隨機(0表示大寫字母,1表示數(shù)字,2表示小寫字母)
if (b==0)//如果類型是大寫字母
{
//此處將數(shù)字轉(zhuǎn)化為字符型,將字符轉(zhuǎn)化為字符串
c += ((char)s.Next(65,91)).ToString();
}
if (b==1)//如果是數(shù)字
{
//將數(shù)字轉(zhuǎn)化為字符串
c += s.Next(0, 10).ToString();
}
if (b==2)//如果是小寫字母
{
c += ((char)s.Next(97,122)).ToString();
}
label1.Text = c;//將c中的值賦給label文本
//設置label中字體顏色
label1.ForeColor = Color.FromArgb(s.Next(0, 255), s.Next(0, 255), s.Next(0, 255));
//設置label中字體大小
label1.Font = new Font("黑體",s.Next(10,30));
}
}
private void Form1_Load(object sender, EventArgs e)
{
button1.Text = "看不清換一張";
}
}
}
效果圖

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
C#用websocket實現(xiàn)簡易聊天功能(客戶端)
這篇文章主要為大家詳細介紹了C#用websocket實現(xiàn)簡易聊天功能,客戶端方向,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
C#應用BindingSource實現(xiàn)數(shù)據(jù)同步的方法
這篇文章主要介紹了C#應用BindingSource實現(xiàn)數(shù)據(jù)同步的方法,需要的朋友可以參考下2014-08-08

