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文本 //設(shè)置label中字體顏色 label1.ForeColor = Color.FromArgb(s.Next(0, 255), s.Next(0, 255), s.Next(0, 255)); //設(shè)置label中字體大小 label1.Font = new Font("黑體",s.Next(10,30)); } } private void Form1_Load(object sender, EventArgs e) { button1.Text = "看不清換一張"; } } }
效果圖
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#用websocket實現(xiàn)簡易聊天功能(客戶端)
這篇文章主要為大家詳細介紹了C#用websocket實現(xiàn)簡易聊天功能,客戶端方向,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02C#應(yīng)用BindingSource實現(xiàn)數(shù)據(jù)同步的方法
這篇文章主要介紹了C#應(yīng)用BindingSource實現(xiàn)數(shù)據(jù)同步的方法,需要的朋友可以參考下2014-08-08