转自:http://www.bullog.cn/blogs/virushuo/archives/37237.aspx
- /// <summary>
- /// 生成随机数,包含数字和字母
- /// </summary>
- /// <param name="length">指定的位数</param>
- /// <returns></returns>
- public static string getRandom(int length)
- {
- byte[] random = new Byte[length / 2];
- // 使用加密服务提供程序 (CSP) 提供的实现来实现加密随机数生成器 (RNG)。无法继承此类
- RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
- rng.GetNonZeroBytes(random);
- StringBuilder sb = new StringBuilder(length);
- int i;
- for (i = 0; i < random.Length; i++)
- {
- // 以16进制格式输出
- sb.Append(String.Format("{0:X2}", random[i]));
- }
- return sb.ToString();
- }