RandomGenerator.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using System;
  2. using System.Text;
  3. namespace GxPress.Common.Tools
  4. {
  5. /// <summary>
  6. /// 随机号生成器
  7. /// </summary>
  8. public class RandomGenerator
  9. {
  10. private static readonly char[] CharArr =
  11. {
  12. '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k',
  13. 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F',
  14. 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'
  15. };
  16. private static readonly char[] NumberArr = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
  17. /// <summary>
  18. /// 生成指定位数的纯数字随机数
  19. /// </summary>
  20. /// <param name="length"></param>
  21. /// <returns></returns>
  22. public static string GetNumberString(int length)
  23. {
  24. var code = new StringBuilder();
  25. var rd = new Random();
  26. var range = NumberArr.Length;
  27. for (var i = 0; i < length; i++)
  28. code.Append(NumberArr[rd.Next(range)].ToString());
  29. return code.ToString();
  30. }
  31. /// <summary>
  32. /// 生成0-z的随机字符串
  33. /// </summary>
  34. /// <param name="length"></param>
  35. /// <returns></returns>
  36. public static string GetString(int length)
  37. {
  38. var code = new StringBuilder();
  39. var rd = new Random();
  40. var range = CharArr.Length;
  41. for (var i = 0; i < length; i++)
  42. code.Append(CharArr[rd.Next(range)].ToString());
  43. return code.ToString();
  44. }
  45. }
  46. }