C#随机生成数字、字母可控制生成类型

by 清泉 6. 十一月 2008 10:05
C#生成可自由选择随机字母数字的类型的函数。转载请注明转自Supidea.comC#随机生成数字、字母可控制生成类型
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'
};
public enum RandomType
{
All,
Number,
Uppercased,
Lowercased,
NumberAndUppercased,
NumberAndLowercased,
UppercasedAndLowercased,
}
public static string GenerateRandom(int Length,RandomType rt)
{
int initsize=0;
int beginsize = 0;
int endsize=0;
Boolean IsCross=false;
switch (rt)
{
case RandomType.All:
{
initsize = 62;
beginsize = 1;
endsize = 62;
//IsCross = false;
break;
}
case RandomType.Lowercased:
{
initsize = 26;
beginsize = 11;
endsize = 36;
//IsCross = false;
break;
}
case RandomType.Uppercased:
{
initsize = 26;
beginsize = 37;
endsize = 62;
// IsCross = false;
break;
}
case RandomType.Number:
{
initsize = 10;
beginsize = 1;
endsize = 10;
//IsCross = false;
break;
}
case RandomType.UppercasedAndLowercased:
{
initsize = 52;
beginsize = 11;
endsize = 62;
//IsCross = false;
break;
}
case RandomType.NumberAndLowercased:
{
initsize = 36;
beginsize = 1;
endsize = 36;
//IsCross = false;
break;
}
case RandomType.NumberAndUppercased:
{
IsCross = true;
break;
}
}
System.Text.StringBuilder newRandom = new System.Text.StringBuilder(initsize);
Random rd = new Random();
if (!IsCross)
{
for (int i = 0; i < Length; i++)
{
newRandom.Append(constant[rd.Next(beginsize, endsize)]);
}
}
else
{
for (int i = 0; i < Length; i++)
{
newRandom.Append(constant[rd.Next(1, 10)]);
newRandom.Append(constant[rd.Next(37, 62)]);
}
}
return newRandom.ToString();
}
使用:GenerateRandom(20,RandomType.NumberAndUppercased )

Tags:

DotNet技术资料

添加评论



(将显示你的Gravatar头像)  

biuquote
微笑得意调皮害羞酷大笑惊讶发呆喜欢可怜尴尬闭嘴噘嘴皱眉伤心抓狂呕吐坏笑漫骂发怒
Loading



Supidea.com 晨飞的梦 @ All Rights Reserved. Powered by BlogYi.NET ver:1.8.0.0. 苏ICP备09011404号

关于博主

kamau
抱着美好的理想背井离乡,这酸甜苦辣只能默默忍受。既然选择了路,就得风雨兼程……

Calendar

<<  五月 2012  >>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

在日历中查看文章

最近的评论

Comment RSS

声明

      本博所发一切破解相关附件只作学习研究交流之用,严禁用于商业用途,请在下载24小时内删除。
      本博所有网友评论不代表本博立场,版权归其作者所有。

© Copyright 2009