我有一个名为MAPS的文件夹。我希望在选择菜单项时,在这种情况下,它的Maps-> Random。它将随机选择文件夹映射中的一个文件名。我怎么能让它随意?
答案 0 :(得分:4)
获取文件夹中的文件名列表:
uses
System.Types, System.IOUtils;
var
FileNames: TStringDynArray;
....
FileNames := TDirectory.GetFiles(DirectoryName);
然后随机选择一个索引。
var
Index: Integer;
.....
Index := Random(Length(FileNames));
因此,您的随机文件名由
给出FileNames[Index];
启动时调用Randomize
以确保用户每次运行程序时都不会获得相同的随机数字序列。
这不是最有效的方法,因为它为目录中的每个文件分配字符串,然后您只使用一个。但是,它可能是最方便和最简单的方法。