C#随机生成不重复字符串的两个不错方法

发布时间:2022-04-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了C#随机生成不重复字符串的两个不错方法脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
今天整理以前一个项目码,发现两个随机生成不重复字符串的方法,觉得用起来挺方便的,在此贴出来,方便以后查阅。

方法一:随机生成不重复数字字符串
复制代码 代码如下:

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#随机生成不重复字符串的两个不错方法所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。