RandHelper.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. namespace PublicLibrary.Common
  5. {
  6. public class RandHelper
  7. {
  8. /// <summary>
  9. /// 获得三位的随机数
  10. /// </summary>
  11. /// <returns></returns>
  12. public static string getThreeNumRandom()
  13. {
  14. Random ro = new Random();
  15. int iResult;
  16. int iUp = 999;
  17. int iDown = 100;
  18. iResult = ro.Next(iDown, iUp);
  19. //Response.Write(iResult.ToString());
  20. return iResult.ToString().Trim();
  21. }
  22. /// <summary>
  23. /// 新的日期字符串
  24. /// </summary>
  25. /// <param name="oldShortDateTime"></param>
  26. /// <returns></returns>
  27. public static string generateNewLongDateTime()
  28. {
  29. string currentTime = DateTime.Now.ToString("yyyyMMddHHmmss");
  30. return currentTime;
  31. }
  32. /*无重复的ID生成可由上述二个函数来生成:
  33. 既可以生成由当前日期生成的ID,也可以由以前日期来生成这样的ID
  34. string newid = generateNewLongDateTime() + getTreeNumRandom();
  35. NewDateAndTime.ToString("yyyyMMddhhmmss"); 这一句有问题,如果是下午12点以后,就会产生13-12,14-12的情况,不是按24小时制来完成的。
  36. NewDateAndTime.ToString("yyyyMMddHHmmss");
  37. ToString("yyyyMMddhhmmss"); 12时制
  38. 要改成ToString("yyyyMMddHHmmss"); 24时制*/
  39. public static long GetTimeRandId()
  40. {
  41. string newid = generateNewLongDateTime() + getThreeNumRandom();
  42. return Int64.Parse(newid);
  43. }
  44. public static string GetRandGuid(int length)
  45. {
  46. string newid = Guid.NewGuid().ToString("N");
  47. newid = newid.Substring(0, length);
  48. return newid;
  49. }
  50. private static char[] constant =
  51. {
  52. '0','1','2','3','4','5','6','7','8','9',
  53. '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',
  54. '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'
  55. };
  56. public static string GenerateRandomCode(int Length)
  57. {
  58. System.Text.StringBuilder newRandom = new System.Text.StringBuilder(62);
  59. Random rd = new Random();
  60. for (int i = 0; i < Length; i++)
  61. {
  62. newRandom.Append(constant[rd.Next(62)]);
  63. }
  64. return newRandom.ToString();
  65. }
  66. }
  67. }