我需要从目录中选择一个文件并移动到另一个目录。为此,我需要随机选择一个文件。
我需要选择一个随机文件(任何分机都可以),但我不知道如何使用return
,因为我是VB.NET
的新手。所以请提出想法和代码。
答案 0 :(得分:2)
喜欢这个吗?
Sub MoveRandomFile(from$, to$)
Static r As New Random
Dim Files = New IO.DirectoryInfo([from]).GetFiles
Dim FileToMove = Files(r.Next(0, Files.Count))
IO.File.Move(FileToMove.FullName, FileToMove.FullName.Replace([from], [to]))
End Sub
或者,如果您只想返回一个随机文件:
Function GetRandomFile(folder$) As IO.FileInfo
Static r As New Random
Dim Files = New IO.DirectoryInfo(folder).GetFiles
Return Files(r.Next(0, Files.Count))
End Function
static关键字在第一次调用方法时创建变量,并在下次保留它。 我们需要这样做的原因是因为随机对象使用种子,就像在Minecraft中一样,并且使用有关正在运行的进程的信息生成此种子。因此,如果每次创建一个新的随机对象,它每次都会选择相同的文件。