从文件夹中选择随机文件

本文关键字:随机文件 选择 文件夹 | 更新日期: 2023-09-27 18:07:30

我的文件夹包含超过100个zip文件。我想从一个文件夹中随机选择一个zip文件。

我试一试:

DirectoryInfo test = new DirectoryInfo(@ "C:'test").GetFiles();
foreach(FileInfo file in test.GetFiles()) {
  Random R = new Random(); //try to apply random logic but fail.
  if (file.Extension == ".zip") {
    string a = "";
    for (int ListTemplate = 0; ListTemplate < 6; ListTemplate++) {
      a += file.FullName; //Want to choose random 6 files.
    }
  }
}            

从文件夹中选择随机文件

要做到这一点,您需要随机化文件排序的顺序。

使用这个答案中显示的排序(如果你愿意,你也可以使用更加密的方法)

var rnd = new System.Random();
var files = Directory.GetFiles(pathToDirectory, "*.zip")
                     .OrderBy(x => rnd.Next())
                     .Take(numOfFilesThatYouWant);

然后你可以计算foreach中的files。它应该以随机顺序给出您想要处理的文件数量。