C#各种数字字母指定长度随机方法
来源:互联网 发布:软件著作权 设计说明书 编辑:程序博客网 时间:2024/06/08 09:15
/// <summary>
/// 数字辅助类
/// 杨方粒
/// </summary>
public class NumHelper
{
#region
/////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////// 随机数(订单、编号) //////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 获取指定长度的随机数(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母(L)</returns>
public string GetRandom_CNL(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(35)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字与大写字母混合(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母(M)</returns>
public string GetRandom_CNM(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(36)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字与字母混合(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母</returns>
public string GetRandom_CN(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(62)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数</returns>
public string GetRandom_N(int length)
{
string all = "0,1,2,3,4,5,6,7,8,9";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(10)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||小写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机小写字母</returns>
public string GetRandom_CL(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(26)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||大写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机大写字母</returns>
public string GetRandom_CM(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(26)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||大写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机大小写字母</returns>
public string GetRandom_CML(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(52)];
}
return result;
}
/// <summary>
/// 获取时间+4位随机(共18位唯一)(会重复)
/// </summary>
/// <returns>18位随机数</returns>
public string GetRandom_T()
{
string result = "";
string four = GetRandom_CN(4);
string dt = DateTime.Now.ToString("yyyyMMddhhmmss");
result = dt + four;
return result;
}
#endregion
#region
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////// 随机数(彩票) /////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 获取指定数字范围和指定个数的随机数集合
/// </summary>
/// <param name="indexnum">起始数字</param>
/// <param name="endnum">终止数字</param>
/// <param name="count">数字个数</param>
/// <returns></returns>
public List<int> GetRandomNum(int indexnum, int endnum, int count)
{
if (count > endnum - indexnum) {
return null;
}
List<int> lst = new List<int>();
Random r = new Random();
while (lst.Count < count)
{
int a = 0;
int rannum = r.Next(indexnum, endnum);
for (int i = 0; i < lst.Count; i++)
{
if (lst[i] == rannum) {
a++;
}
}
if (a == 0) {
lst.Add(rannum);
}
}
return BubbleSort(lst);
}
#endregion
#region
/////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////// 排序 /////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 冒泡排序
/// </summary>
/// <param name="lst">数字集合</param>
/// <returns></returns>
public List<int> BubbleSort(List<int> a)
{
int temp = 0;
for (int i = a.Count - 1; i > 0; --i)
{
for (int j = 0; j < i; ++j)
{
if (a[j + 1] < a[j])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
return a;
}
#endregion
}
/// 数字辅助类
/// 杨方粒
/// </summary>
public class NumHelper
{
#region
/////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////// 随机数(订单、编号) //////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 获取指定长度的随机数(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母(L)</returns>
public string GetRandom_CNL(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(35)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字与大写字母混合(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母(M)</returns>
public string GetRandom_CNM(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(36)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字与字母混合(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数字字母</returns>
public string GetRandom_CN(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(62)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||数字(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机数</returns>
public string GetRandom_N(int length)
{
string all = "0,1,2,3,4,5,6,7,8,9";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(10)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||小写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机小写字母</returns>
public string GetRandom_CL(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(26)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||大写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机大写字母</returns>
public string GetRandom_CM(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(26)];
}
return result;
}
/// <summary>
/// 获取指定长度的随机数|||大写字母(会重复)
/// </summary>
/// <param name="length">随机数长度</param>
/// <returns>随机大小写字母</returns>
public string GetRandom_CML(int length)
{
string all = "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";
string[] allChar = all.Split(',');
string result = "";
Random rand = new Random();
for (int i = 0; i < length; i++)
{
result += allChar[rand.Next(52)];
}
return result;
}
/// <summary>
/// 获取时间+4位随机(共18位唯一)(会重复)
/// </summary>
/// <returns>18位随机数</returns>
public string GetRandom_T()
{
string result = "";
string four = GetRandom_CN(4);
string dt = DateTime.Now.ToString("yyyyMMddhhmmss");
result = dt + four;
return result;
}
#endregion
#region
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////// 随机数(彩票) /////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 获取指定数字范围和指定个数的随机数集合
/// </summary>
/// <param name="indexnum">起始数字</param>
/// <param name="endnum">终止数字</param>
/// <param name="count">数字个数</param>
/// <returns></returns>
public List<int> GetRandomNum(int indexnum, int endnum, int count)
{
if (count > endnum - indexnum) {
return null;
}
List<int> lst = new List<int>();
Random r = new Random();
while (lst.Count < count)
{
int a = 0;
int rannum = r.Next(indexnum, endnum);
for (int i = 0; i < lst.Count; i++)
{
if (lst[i] == rannum) {
a++;
}
}
if (a == 0) {
lst.Add(rannum);
}
}
return BubbleSort(lst);
}
#endregion
#region
/////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////// 排序 /////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// 冒泡排序
/// </summary>
/// <param name="lst">数字集合</param>
/// <returns></returns>
public List<int> BubbleSort(List<int> a)
{
int temp = 0;
for (int i = a.Count - 1; i > 0; --i)
{
for (int j = 0; j < i; ++j)
{
if (a[j + 1] < a[j])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
return a;
}
#endregion
}
阅读全文
0 0
- C#各种数字字母指定长度随机方法
- Random方法:生成指定长度的随机数字
- Java指定长度随机生成的字符串,且这个字符串必须包含大小写字母和数字
- php生成随机字符串 指定长度 可以固定数字 字母 混合
- Java指定长度随机生成的字符串,且这个字符串必须包含大小写字母和数字
- C#随机生成n位数字和字母的方法
- C#生成各种随机数 随机字母
- C# Random生成随机数字和字母
- java生成随机密码(随机长度,指定长度)方法总结
- C# 生成指定长度的随机字符串
- java生成随机数字和字母组合(自定义长度)
- Java随机生成长度不少于6的指定长度的密码,且这个字符串必须包含大小写字母、数字和特殊字符,四种的任意三种
- 编写一个生成随机字符串的方法,参数接收长度,字符串中可能含有大写字母、 小写字母和数字。
- 生成指定长度带数字和字母的
- 随机生成数字字母
- 随机生成字母+数字
- Java随机密码生成器,Java随机生成长度不少于6的指定长度的密码,且这个字符串必须包含大小写字母、数字和特殊字符,四种的任意三种
- C#中如何产生字母和数字的随机组合
- vs自带代码分析,帮助改善代码
- 魔戒
- ImageView 属性:android:scaleType 详解
- centos7 nginx 安装
- 编译平台工具集选择错了
- C#各种数字字母指定长度随机方法
- 20170606学习笔记整理
- 8个最佳的PHP扩展库
- VS2010无法调试问题解决 最近,因为公司开发的需要,对开发环境进行全面的升级,在这其中也遇到了不少问题,在之后将陆续整理出来,以便以后查看。 之前开发环境:VS2008,ArcGIS9.3,Ar
- pymongo.errors.CursorNotFound: Cursor not found, cursor id: 124891571478
- 关于电脑安装多个版本JDK后使用时的切换
- Eclipse 在Android 7.0的手机上调试无法输出logcat解决方案
- POJ 1916 Rat Attack 笔记
- mfc activeX 接口为默认参数(可选)的设置----VARIANT:DISPATCH、VT_DISPATCH类型的取值