国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

編寫可以打開文本文件并打亂在該文件中所找到的單詞順序的

2019-10-26 17:59:03
字體:
來源:轉載
供稿:網友
問:
您好,腳本專家!我女兒有一種閃卡式程序,它能夠獲取文本文件中的單詞列表。我如何編寫一個腳本,使其能夠打開該文件并自動打亂單詞列表的順序呢?
-- SN
答:
您好,SN。您知道,大多數情況下,我們盡力使此專欄關注實際的系統管理任務:我們告訴您如何設置默認打印機、如何禁用服務以及如何映射網絡驅動器。不過,有時我們也愿意處理那種聽起來就很有趣的問題,而最終的結果有多大用處我們是不會去考慮的。系統管理員通常需要打亂文本文件中單詞列表的順序嗎?可能不需要。但是,若是只工作,不玩耍,想必聰明的小孩也會變傻,對不對? 
實際上,有些小孩就算玩了也還是有點傻。但這是另外一回事。
明確這一點后,讓我們看一下可以打亂文本文件中單詞順序的腳本。正如我們說過的那樣,這樣的工作在實際當中可能沒有一點用處,但它是有點挑戰性,并且也確實需要我們使用一點令人感興趣的腳本編寫小竅門。還有,如果不是這樣,您可能永遠也不會知道這樣的竅門何時才能派上用場。
首先,假定您有個類似于下面這樣的文本文件,文件中的所有單詞按字母順序排列:
Apple
Banana
Carrot
Dog
Fish
Elephant
Giraffe
Horse
如何才能打亂這些詞的順序呢?使用像下面這樣的腳本即可:
復制代碼 代碼如下:

Const ForReading = 1 
Const ForWriting = 2 
Set objDictionary = CreateObject("Scripting.Dictionary") 
Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFSO.OpenTextFile("c:/scripts/words.txt", ForReading) 
i = -1 
Do Until objFile.AtEndOfStream 
    strLine = objFile.Readline 
    objDictionary.Add strLine, strLine    
    i = i + 1 
Loop 
objFile.Close 
Dim arrWords() 
Redim arrWords(i) 
intWordsLeft = i 
z = 0 
Do While intWordsLeft >= 0 
    Randomize 
    rndWord = Int((intWordsLeft - 0 + 1) * Rnd + 0) 
    intWordsLeft = intWordsLeft - 1 
    colItems = objDictionary.Items 
    strText = colItems(rndWord) 
    arrWords(z) = strText 
    z = z + 1 
    objDictionary.Remove(strText) 
Loop 
Set objFile = objFSO.OpenTextFile("c:/scripts/words.txt", ForWriting) 
For Each strItem in arrWords 
    objFile.WriteLine strItem 
Next 
objFile.Close 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潼关县| 潮州市| 平南县| 长兴县| 方正县| 石嘴山市| 安义县| 西华县| 万山特区| 东丽区| 肇源县| 黄山市| 锦州市| 大新县| 辉南县| 神农架林区| 陇川县| 乌审旗| 临沧市| 疏勒县| 左云县| 梨树县| 邵阳县| 松桃| 高邑县| 东城区| 嵩明县| 龙川县| 闽清县| 遵化市| 麦盖提县| 克什克腾旗| 通州区| 和平区| 治多县| 抚顺市| 综艺| 佛山市| 齐河县| 新巴尔虎左旗| 洞口县|