//ASP .NET用户登录界面经常用到验证码代码如下PRivate void Page_Load(object sender, System.EventArgs e){// 在此处放置用户代码以初始化页面Label4.Text=RandomNum(4);}public string RandomNum(int n) //{string strchar = "0,1,2,3,4,5,6,7,8,9" ;string[] VcArray = strchar.Split(',') ;string VNum = "" ;//由于字符串很短,就不用StringBuilder了int temp = -1 ; //记录上次随机数值,尽量避免产生几个一样的随机数//采用一个简单的算法以保证生成随机数的不同Random rand =new Random();for ( int i = 1 ; i < n+1 ; i++ ) { if ( temp != -1) {rand =new Random(i*temp*unchecked((int)DateTime.Now.Ticks));} //int t = rand.Next(35) ;int t=rand.Next(10);if (temp != -1 && temp == t) {return RndNum( n);}temp = t ;VNum += VcArray[t];}return VNum ;//返回生成的随机数}// ''函数名称:RndNum // ''函数参数:VCodeNum--设定返回随机字符串的位数 // ''函数功能:产生数字和字符混合的随机字符串 private string RndNum(int VcodeNum) { string Vchar = "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,W,X,Y,Z" ; string[] VcArray = Vchar.Split(",".ToCharArray()); //将字符串生成数组 string VNum = ""; int i; for(i=1;i<VcodeNum;i++) { System.Random ro = new Random(); double decA = ro.NextDouble(); VNum = VNum + VcArray[Convert.ToInt32(35*decA)]; } // For i=1 to VcodeNum // Randomize // VNum=VNum & VcArray(Int(35*Rnd)) ''数组一般从0开始读取,所以这里为35*Rnd // Next return VNum; }//ASP .NET登录界面用户验证码代码,网络上搜集整理测试
新闻热点
疑难解答