以前使用按鍵精靈獲取過指定文件夾下的隨機行,實際上詳細點說應該是“獲取指定的文件夾--目錄下隨機TXT文件--文件中的隨機一行”,使用本方法可以隨機組合出標題或用于其他用途。

今天我又重新看到這篇文章,整理出精簡版,可以實現按鍵精靈獲取隨機文件夾下的隨機行;

取文件夾下隨機文件的隨機行
Function 取隨機文件夾下隨機行(文件夾路徑)
    //a.調用文件夾內的隨機文件
    FileEx = FindAllFiles(文件夾路徑)
    If UBound(FileEx) > 0 Then
        隨機文件名 = FileEx(int(rnd * UBound(FileEx)))
        TXT路徑 = 文件夾路徑 + "\" + 隨機文件名
        TracePrint "目前準備調用 [" + TXT路徑 + "] 下的隨機行"
    End If
    //b.調用隨機文件內的隨機行
    Text = Plugin.File.ReadFileEx(TXT路徑)
    隨機行 = Split(Text, "|")
    取隨機文件夾下隨機行 = 隨機行(Int((UBound(隨機行) * Rnd) + 0))
End Function

很多人在運行上述代碼的時候總是遺忘了寫入啟動遍歷所有文件的函數,將所有代碼組合起來后如下:

//初始化隨機數生成器  
Randomize  
//初始化隨機數生成器函數  
FunctionFindAllFiles(FolderPath)//初始化查找文件  
DimAllFiles,fso,Folder,f,files  
AllFiles=""  
Setfso=CreateObject("Scripting.FileSystemObject")  
SetFolder=fso.getfolder(FolderPath)  
Setfiles=Folder.files  
ForEachfInfiles  
AllFiles=AllFiles&f.name&","  
Next  
Setfso=Nothing  
FindAllFiles=Split(AllFiles,",")  
EndFunction  
//--------------------------------------------------------------------  
Function取隨機文件夾下隨機行(文件夾路徑)  
//a.調用文件夾內的隨機文件  
FileEx=FindAllFiles(文件夾路徑)  
IfUBound(FileEx)>0Then  
隨機文件名=FileEx(int(rnd*UBound(FileEx)))  
TXT路徑=文件夾路徑+"\"+隨機文件名  
TracePrint"目前準備調用["+TXT路徑+"]下的隨機行"  
EndIf  
//b.調用隨機文件內的隨機行  
Text=Plugin.File.ReadFileEx(TXT路徑)  
隨機行=Split(Text,"|")  
取隨機文件夾下隨機行=隨機行(Int((UBound(隨機行)*Rnd)+0))  
EndFunction  
For5  
地名=取隨機文件夾下隨機行("C:\TXT\通用\地名\全國廣泛")  
組合=地名+"拱形屋頂有限公司"  
CallPlugin.File.WriteFileEx("C:\Users\AsWait\Desktop\組合.txt",組合)  
Delay100  
Next

上述代碼你自行配置和擴充之后,即可做出組合隨機標題的程序。