Guest User

Untitled

a guest
Jun 23rd, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.83 KB | None | 0 0
  1. private string getrandomfile(string path)
  2. {
  3. ArrayList al = new ArrayList();
  4. DirectoryInfo di = new DirectoryInfo(path);
  5. FileInfo[] rgFiles = di.GetFiles("*.*");
  6. foreach (FileInfo fi in rgFiles)
  7. {
  8. al.Add(fi.FullName);
  9. }
  10.  
  11. Random r = new Random();
  12. int x = r.Next(0,al.Count);
  13.  
  14. return al[x].ToString();
  15.  
  16. }
  17.  
  18. // Use a class variable so that the RNG is only created once.
  19. private Random generator;
  20. private Random Generator
  21. {
  22. get
  23. {
  24. if (this.generator == null)
  25. {
  26. this.generator = new Random();
  27. }
  28. return this.generator;
  29. }
  30. }
  31. private string getrandomfile(string path)
  32. {
  33. string file = null;
  34. if (!string.IsNullOrEmpty(path))
  35. {
  36. var extensions = new string[] { ".png", ".jpg", ".gif" };
  37. try
  38. {
  39. var di = new DirectoryInfo(path);
  40. var rgFiles = di.GetFiles("*.*")
  41. .Where( f => extensions.Contains( f.Extension
  42. .ToLower() );
  43. int fileCount = rgFiles.Count();
  44. if (fileCount > 0)
  45. {
  46. int x = this.Generator.Next( 0, fileCount );
  47. file = rgFiles.ElementAt(x).FullName;
  48. }
  49. }
  50. // probably should only catch specific exceptions
  51. // throwable by the above methods.
  52. catch {}
  53. }
  54. return file;
  55. }
  56.  
  57. var files = Directory.GetFiles(path, "*.*").Where(s => Regex.Match(s, @".(jpg|gif|png)$").Success);
  58. string randFile = path + files.ToList()[r.Next(0, files.Count())];
  59.  
  60. private static string getRandomFile(string path)
  61. {
  62. try
  63. {
  64. var extensions = new string[] { ".png", ".jpg", ".gif" };
  65.  
  66. var di = new DirectoryInfo(path);
  67. return (di.GetFiles("*.*")
  68. .Where(f => extensions.Contains(f.Extension
  69. .ToLower()))
  70. .OrderBy(f => Guid.NewGuid())
  71. .First()).FullName ;
  72. }
  73. catch { return ""; }
  74. }
  75.  
  76. private string getrandomfile2(string path)
  77. {
  78. string file = null;
  79. if (!string.IsNullOrEmpty(path))
  80. {
  81. var extensions = new string[] { ".png", ".jpg", ".gif" };
  82. try
  83. {
  84. var di = new DirectoryInfo(path);
  85. var rgFiles = di.GetFiles("*.*").Where( f => extensions.Contains( f.Extension.ToLower()));
  86. Random R = new Random();
  87. file = rgFiles.ElementAt(R.Next(0,rgFiles.Count())).FullName;
  88. }
  89. // probably should only catch specific exceptions
  90. // throwable by the above methods.
  91. catch {}
  92. }
  93. return file;
  94. }
Add Comment
Please, Sign In to add comment