今天整理以前一个项目源码,发现两个随机生成不重复字符串的方法,觉得用起来挺方便的,在此贴出来,方便以后查阅。
方法一:随机生成不重复数字字符串
代码如下:
private int rep=0;
/// <summary>
/// 生成随机数字字符串
/// </summary>
/// <param name="codeCount">待生成的位数</param>
/// <returns>生成的数字字符串</returns>
private string GenerateCheckCodeNum(int codeCount)
{
string str = string.Empty;
long num2 = DateTime.Now.Ticks + this.rep;
this.rep++;
Random random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> this.rep)));
for (int i = 0; i < codeCount; i++)
{
int num = random.Next();
str = str + ((char)(0x30 + ((ushort)(num % 10)))).ToString();
}
return str;
}
方法二:随机生成字符串(数字和字母混和)
/// <summary>
/// 生成随机字母字符串(数字字母混和)
/// </summary>
/// <param name="codeCount">待生成的位数</param>
/// <returns>生成的字母字符串</returns>
private string GenerateCheckCode(int codeCount)
{
string str = string.Empty;
long num2 = DateTime.Now.Ticks + this.rep;
this.rep++;
Random random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> this.rep)));
for (int i = 0; i < codeCount; i++)
{
char ch;
int num = random.Next();
if ((num % 2) == 0)
{
ch = (char)(0x30 + ((ushort)(num % 10)));
}
else
{
ch = (char)(0x41 + ((ushort)(num % 0x1a)));
}
str = str + ch.ToString();
}
return str;
}
您可能感兴趣的文章:C#生成指定范围内的不重复随机数C#生成不重复随机字符串类C#生成唯一不重复订单号C#不重复输出一个数组中所有元素的方法C#实现在购物车系统中生成不重复订单号的方法c# 两个数组比较,将重复部分去掉,返回不重复部分的实现C#实现排列组合算法完整实例C#中实现任意List的全组合算法代码C#查找字符串所有排列组合的方法C#实现组合排列的方法详解C#的排列组合C#实现生成所有不重复的组合功能示例
字符串
字符