C#随机生成不重复字符串的两个不错方法
C#随机生成不重复字符串的两个不错方法
发布时间:2016-12-29 来源:查字典编辑
摘要:今天整理以前一个项目源码,发现两个随机生成不重复字符串的方法,觉得用起来挺方便的,在此贴出来,方便以后查阅。方法一:随机生成不重复数字字符串...

今天整理以前一个项目源码,发现两个随机生成不重复字符串的方法,觉得用起来挺方便的,在此贴出来,方便以后查阅。

方法一:随机生成不重复数字字符串

复制代码 代码如下:

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;

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类