code_junkie

How to make a method to return random string in the format A1A 1A1?

Nov 12th, 2011
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. private static readonly Random rng = new Random();
  2.  
  3. private static RandomChar(string domain)
  4. {
  5. int selection = rng.Next(domain.Length);
  6. return domain[selection];
  7. }
  8.  
  9. private static char RandomDigit()
  10. {
  11. return RandomChar("0123456789");
  12. }
  13.  
  14. private static char RandomLetter()
  15. {
  16. return RandomChar("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
  17. }
  18.  
  19. public static char RandomStringInSpecialFormat()
  20. {
  21. char[] text = new char[6];
  22. char[0] = RandomLetter();
  23. char[1] = RandomDigit();
  24. char[2] = RandomLetter();
  25. char[3] = RandomDigit();
  26. char[4] = RandomLetter();
  27. char[5] = RandomDigit();
  28. return new string(text);
  29. }
  30.  
  31. private int RandomNumber(int min, int max)
  32. {
  33. Random random = new Random();
  34. return random.Next(min, max);
  35. }
  36.  
  37. public static string RandomString(Random rand, int length)
  38. {
  39. char[] str = new char[length];
  40. for (int i = 0; i < length; i++)
  41. {
  42. if (i % 2 == 0)
  43. { //letters
  44. str[i] = (char)rand.Next(65, 90);
  45. }
  46. else
  47. {
  48. //numbers
  49. str[i] = (char)rand.Next(48, 57);
  50. }
  51. }
  52. return new string(str);
  53. }
  54.  
  55. if (i % 2 == 0)
  56. {
  57. //letters
  58. str[i] = (char)rand.Next('A', 'Z');
  59. }
  60. else
  61. {
  62. //numbers
  63. str[i] = (char)rand.Next('0', '9');
  64. }
  65.  
  66. class Program
  67. {
  68. static void Main(string[] args)
  69. {
  70. Random r = new Random();
  71. for(int i = 0;i<25;i++)
  72. Console.WriteLine(RandomString(r,6));
  73. Console.Read();
  74. }
  75.  
  76. public static string RandomString(Random rand, int length)
  77. {
  78. char[] str = new char[length];
  79. for (int i = 0; i < length; i++)
  80. str[i] = (char)rand.Next(65 - (17 * (i % 2)), 91-(33 * (i % 2)));
  81. return new string(str);
  82. }
  83. }
Add Comment
Please, Sign In to add comment