class Program
{
public static int icount;
static void Main(string[] args)
{
Stopwatch timer1 = new Stopwatch();//计时器类
timer1.Start();//开始计时
int i = Convert.ToInt32(args[0]);//生成的防伪码的长度
int j = Convert.ToInt32(args[1]);//生成防伪码的个数
string str = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ";
StringBuilder newStr = new StringBuilder();//用来存储防伪码
Hashtable hashtable = new Hashtable();
int seekSeek = unchecked((int)DateTime.Now.Ticks);//获取随机数种子
Random seekRand = new Random(seekSeek);
for (icount=0; icount < j; icount++)
{
newStr.Clear();
for (int k = 0; k < i; k++)
{
newStr.Append(str[seekRand.Next(0,34)]);
}//生成防伪码
if (!hashtable.Contains(newStr.ToString()))//判断防伪码是否重复
{
hashtable.Add( newStr.ToString(),"");
//Console.WriteLine(newStr.ToString());
}
else
icount--;
}
timer1.Stop();//停止计时
double dMilliseconds = timer1.Elapsed.TotalMilliseconds;
Console.WriteLine("生成个数为:{0},运行时间为:{1}", icount, dMilliseconds);
Console.ReadKey();
}
}
{
public static int icount;
static void Main(string[] args)
{
Stopwatch timer1 = new Stopwatch();//计时器类
timer1.Start();//开始计时
int i = Convert.ToInt32(args[0]);//生成的防伪码的长度
int j = Convert.ToInt32(args[1]);//生成防伪码的个数
string str = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ";
StringBuilder newStr = new StringBuilder();//用来存储防伪码
Hashtable hashtable = new Hashtable();
int seekSeek = unchecked((int)DateTime.Now.Ticks);//获取随机数种子
Random seekRand = new Random(seekSeek);
for (icount=0; icount < j; icount++)
{
newStr.Clear();
for (int k = 0; k < i; k++)
{
newStr.Append(str[seekRand.Next(0,34)]);
}//生成防伪码
if (!hashtable.Contains(newStr.ToString()))//判断防伪码是否重复
{
hashtable.Add( newStr.ToString(),"");
//Console.WriteLine(newStr.ToString());
}
else
icount--;
}
timer1.Stop();//停止计时
double dMilliseconds = timer1.Elapsed.TotalMilliseconds;
Console.WriteLine("生成个数为:{0},运行时间为:{1}", icount, dMilliseconds);
Console.ReadKey();
}
}