要生成验证码只有两步,生成指定长度的随机字符串,把生成的字符串转换成图片输出,网上有好多这些代码,这里只记录第一步,利用余数生成指定范围的随机字符串
int number, i;
StringBuilder myStr = new StringBuilder(string.Empty);
//随机数种子
Random random = new Random();
//数字和大小写字母
for (i = 0; i < codeLength; i++)
{
//随机的整数
number = random.Next();
//字符从0-9、A-Z、a-z中随机产生,一共62个字符,对应的ASCII码是48-57、65-90、97-122
//%是取余,n%62的余数范围是0-61
//0-9(48-57)有10个字符,对应余数0-9:余数 + 48
//A-Z(65-90)是26个字符,对应余数10-35:余数 + 65 - 10 = 余数 + 55
//a-z(97-122)是26个字符,对应余数36-61:余数 + 97 - 36 = 余数 + 61
number = number % 62;
if (number < 10)
{
number += 48;
}
else if (number < 36)
{
number += 55;
}
else
{
number += 61;
}
//累加检验码字符串
myStr.Append((char)number).ToString();
}