C#验证码生成

原创 2018年04月16日 12:56:09
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;


namespace ShortTest.Common
{
    public static class GetRandom
    {
        private static char[] constant =
        {
            '0','1','2','3','4','5','6','7','8','9',
            'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
            'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'
        };
        /// <summary>
        /// 生成有字母的验证码
        /// </summary>
        /// <param name="Length">指定验证码的长度</param>
        /// <returns></returns>
        public static string GenerateRandomNumber(int Length)
        {
            System.Text.StringBuilder newRandom = new System.Text.StringBuilder(62);
            Random rd = new Random();
            for (int i = 0; i < Length; i++)
            {
                newRandom.Append(constant[rd.Next(62)]);
            }
            return newRandom.ToString();
        }




        /// <summary>
        /// 生成验证码数字
        /// </summary>
        /// <param name="length">指定验证码的长度</param>
        /// <returns></returns>
        public static string CreateValidateCode(int length)
        {
            int[] randMembers = new int[length];
            int[] validateNums = new int[length];
            string validateNumberStr = "";
            //生成起始序列值
            int seekSeek = unchecked((int)DateTime.Now.Ticks);
            Random seekRand = new Random(seekSeek);
            int beginSeek = (int)seekRand.Next(0, Int32.MaxValue - length * 10000);
            int[] seeks = new int[length];
            for (int i = 0; i < length; i++)
            {
                beginSeek += 10000;
                seeks[i] = beginSeek;
            }
            //生成随机数字
            for (int i = 0; i < length; i++)
            {
                Random rand = new Random(seeks[i]);
                int pownum = 1 * (int)Math.Pow(10, length);
                randMembers[i] = rand.Next(pownum, Int32.MaxValue);
            }
            //抽取随机数字
            for (int i = 0; i < length; i++)
            {
                string numStr = randMembers[i].ToString();
                int numLength = numStr.Length;
                Random rand = new Random();
                int numPosition = rand.Next(0, numLength - 1);
                validateNums[i] = Int32.Parse(numStr.Substring(numPosition, 1));
            }
            //生成验证码
            for (int i = 0; i < length; i++)
            {
                validateNumberStr += validateNums[i].ToString();
            }
            return validateNumberStr;
        }


    }
}

c#c# 生成汉字的验证码

  • 2009年11月06日 11:24
  • 36KB
  • 下载

c#生成随机验证码的源代码(非常简单,注意)

  • 2013年10月10日 20:10
  • 173KB
  • 下载

C#生成验证码(纯数字)

新建一个验证码生成类,名为ValidateCodeHelper.cs using System; using System.Collections.Generic; using System.Dr...
  • fly043488
  • fly043488
  • 2017-04-01 10:48:32
  • 1437

C#随机生成验证码方法

using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using S...
  • Denghejing
  • Denghejing
  • 2016-07-10 15:40:37
  • 4115

C#生成简单验证码

我们平时无论是网站登录还是注册,都会频繁的遇到各式各样的验证码 ,其实生成验证码对于C#来说非常简单。 下面就是我学习生成验证码的简单实例。 封装的辅助类代码,如下: 1 using Syste...
  • CodeSection
  • CodeSection
  • 2017-02-23 11:11:52
  • 1641

C#-ASP.NET 自动生成验证码

string code = CreateRandomCode(5); TempData["SecurityCode"] = code; return F...
  • wpg_boke
  • wpg_boke
  • 2016-08-13 22:50:30
  • 335

C#生成随机验证码例子

C#生成随机验证吗例子:  前端: 1 2 "24%" height="26" align="center" valign="top"> 3 验证...
  • CoderJYF
  • CoderJYF
  • 2017-01-17 10:25:21
  • 1074

c# 生成验证码 功能齐全

  • 2009年04月06日 15:21
  • 25KB
  • 下载

C# 如何自动生成验证码(Web图形验证码生成示例),相信好多人有要用哦(源码)

  • 2008年12月18日 10:26
  • 3KB
  • 下载

C#产生随机验证码的代码

再次申明非本人原创。可以到网上下载ASPNETAJAXWeb.ValidateCode.dll直接使用 using System; using System.Collections.Gen...
  • Denghejing
  • Denghejing
  • 2016-07-10 15:27:52
  • 1397
收藏助手
不良信息举报
您举报文章:C#验证码生成
举报原因:
原因补充:

(最多只允许输入30个字)