C#隨機(jī)生成不重復(fù)字符串的兩個(gè)不錯(cuò)方法
更新時(shí)間:2014年05月15日 15:11:13 作者:
發(fā)現(xiàn)兩個(gè)隨機(jī)生成不重復(fù)字符串的方法,感覺還不錯(cuò),下面與大家分享下
今天整理以前一個(gè)項(xiàng)目源碼,發(fā)現(xiàn)兩個(gè)隨機(jī)生成不重復(fù)字符串的方法,覺得用起來挺方便的,在此貼出來,方便以后查閱。
方法一:隨機(jī)生成不重復(fù)數(shù)字字符串
private int rep=0;
/// <summary>
/// 生成隨機(jī)數(shù)字字符串
/// </summary>
/// <param name="codeCount">待生成的位數(shù)</param>
/// <returns>生成的數(shù)字字符串</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;
}
方法二:隨機(jī)生成字符串(數(shù)字和字母混和)
/// <summary>
/// 生成隨機(jī)字母字符串(數(shù)字字母混和)
/// </summary>
/// <param name="codeCount">待生成的位數(shù)</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;
}
方法一:隨機(jī)生成不重復(fù)數(shù)字字符串
復(fù)制代碼 代碼如下:
private int rep=0;
/// <summary>
/// 生成隨機(jī)數(shù)字字符串
/// </summary>
/// <param name="codeCount">待生成的位數(shù)</param>
/// <returns>生成的數(shù)字字符串</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;
}
方法二:隨機(jī)生成字符串(數(shù)字和字母混和)
/// <summary>
/// 生成隨機(jī)字母字符串(數(shù)字字母混和)
/// </summary>
/// <param name="codeCount">待生成的位數(shù)</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#生成指定范圍內(nèi)的不重復(fù)隨機(jī)數(shù)
- C#生成不重復(fù)隨機(jī)字符串類
- C#生成唯一不重復(fù)訂單號
- C#不重復(fù)輸出一個(gè)數(shù)組中所有元素的方法
- C#實(shí)現(xiàn)在購物車系統(tǒng)中生成不重復(fù)訂單號的方法
- c# 兩個(gè)數(shù)組比較,將重復(fù)部分去掉,返回不重復(fù)部分的實(shí)現(xiàn)
- C#實(shí)現(xiàn)排列組合算法完整實(shí)例
- C#中實(shí)現(xiàn)任意List的全組合算法代碼
- C#查找字符串所有排列組合的方法
- C#實(shí)現(xiàn)組合排列的方法
- 詳解C#的排列組合
- C#實(shí)現(xiàn)生成所有不重復(fù)的組合功能示例
相關(guān)文章
Asp.Net Core輕松學(xué)習(xí)系列之配置文件
這篇文章主要給大家介紹了關(guān)于Asp.Net Core輕松學(xué)習(xí)系列之配置文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
使用Entity Framework(4.3.1版本)遇到的問題整理
在這里記錄一下之前使用Entity Framework(4.3.1版本)遇到的問題:更新沒有設(shè)置主鍵的表、更改Code-First的默認(rèn)連接、檢測字符串截?cái)噱e(cuò)誤,需要的朋友可以參考下2012-12-12
asp net core 2.1中如何使用jwt(從原理到精通)
這篇文章主要給大家介紹了關(guān)于asp net core 2.1中如何使用jwt(從原理到精通)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧2018-11-11
ASP.NET中用js取CheckBoxList中值的方法實(shí)例
用腳本取CheckBoxList中的值,并用"|"將其分開,之后將取到的值放入文本框,返回?cái)?shù)據(jù)庫做添加或者修改2013-07-07
.net SMTP發(fā)送Email實(shí)例(可帶附件)
本文為大家詳細(xì)介紹下.net SMTP發(fā)送Email同時(shí)可帶附件的具體實(shí)現(xiàn)思路及代碼,想實(shí)現(xiàn)的朋友可以參考下哈,希望對大家有所幫助2013-07-07
一個(gè)簡單的asp.net 單點(diǎn)登錄實(shí)現(xiàn)
上次做了學(xué)校的火車訂票系統(tǒng),那邊要求要從學(xué)生信息平臺直接點(diǎn)過來就是登錄狀態(tài),不用在重新登錄。學(xué)生信息平臺原來是用asp做的,而火車訂票系統(tǒng)是asp.net做的。兩個(gè)網(wǎng)站的學(xué)生信息調(diào)用的是同一個(gè)數(shù)據(jù)庫。2009-11-11

