c#.net利用RNGCryptoServiceProvider产生任意范围强随机数的办法

  int max = 100; //这样产生0 ~ 100的强随机数(含100)  int rnd = int.MinValue;  decimal _base = (decimal)long.MaxValue;  byte[] rndSeries = new byte[8];  System.Security.Cryptography.RNGCryptoServiceProvider rng       = new System.Security.Cryptography.RNGCryptoServiceProvider();  rng.GetBytes(rndSeries);  rnd = (int)(Math.Abs(BitConverter.ToInt64(rndSeries, 0)) / _base * (max+1));  //不含100需去掉+1

posted @ 2009-11-30 08:55  coudly  阅读(366)  评论(0编辑  收藏  举报