婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 編寫可以打開文本文件并打亂在該文件中所找到的單詞順序的vbs腳本

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

熱門標簽:怎么看地圖標注 外呼線路中繼線是什么 拉薩外呼系統業務 外呼系統免費招代理 深圳外呼系統收費 外呼系統telrobot 合肥高德地圖標注 百度地圖標注是什么意思 廣州ai電銷機器人一般多少錢
問:
您好,腳本專家!我女兒有一種閃卡式程序,它能夠獲取文本文件中的單詞列表。我如何編寫一個腳本,使其能夠打開該文件并自動打亂單詞列表的順序呢?
-- 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 
哦,當然,這看起來有些不可思議;確實是件不可思議的差事(至少對系統管理員來講是這樣的)。但是,不管您相信與否,這其中是有邏輯的,我們也將逐步讓您明白這種邏輯。
腳本的第一部分確實相當簡單。我們定義一對常量 - ForReading 和 ForWriting,我們將在處理文本文件時使用這兩個常量。然后創建兩個對象:Scripting.Dictionary 和 Scripting.FileSystemObject。我們將使用 Dictionary 對象作為從文本文件中所讀取單詞的臨時倉庫;而使用 FileSystemObject 與該文本文件進行實際的交互。
接下來使用 OpenTextFile 方法打開文件 C:\Scripts\Words.txt 以進行讀取。(注意常量 ForReading 的使用。)下一步,創建一個計數器變量 i 并將其值設置為 -1;我們將使用此變量跟蹤文件中的單詞數。為什么 i 要從 -1 而不是 0 開始?因為我們要使用 i 建立一個數組,并且由于數組中的第一項始終為 0(而不是 1),因此我們需要從 -1 開始。在我們讀取第一個單詞時,i 將被設置為 0,盡管聽起來有些奇怪,但是大小為 0 的數組意味著該數組中包含一個數據項。
嗨,我們只是如實匯報,至于原因我們可不曉得。
接下來是下面這段代碼: 
復制代碼 代碼如下:

Do Until objFile.AtEndOfStream 
    strLine = objFile.Readline 
    objDictionary.Add strLine, strLine    
    i = i + 1 
Loop

我們在這里所做的就是逐行讀取文件。對于文件中的每一行(即每個單詞),我們將該值賦給一個名為 strLine 的變量;隨后使用 Add 方法將該值添加到 Dictionary 對象之中,從而將 i 值加 1。文件讀取結束之后,所有的單詞都存儲在 Dictionary 對象之中,i 的值將為 7,這恰好是文件中的單詞數減 1。(為什么?因為其中含有 8 項數據的數組的大小為 7。)
別擔心;到最后您應該會明白其原因所在。
我們希望如此。
關閉文件之后,初始化數組 arrWords,設置其大小為 i (表示文本文件中的單詞數減 1)。同時將 i 值賦給變量 intWordsLeft,通過它我們將知道有多少單詞要被打亂順序。最后,將變量 z 的值設為 0;我們將使用 z 將已打亂順序的單詞填充到數組中。實際上,我們要做的就是從 Dictionary 中隨機取出一個單詞然后將其添加到數組中。因為單詞是以隨機的順序從 Dictionary 中取出的,因此它們在數組中的順序將被“打亂”(以不同的順序存儲)。
現在,到了很有趣的這部分。建立一個 Do 循環,其一直運行到我們用完 Dictionary 對象中的所有單詞。接著使用下面這兩行代碼從 0 和 Dictionary 對象中數據項的數目(或者至少是數據項的實際數減 1,因為 Dictionary 對象中的第一個數據項為第 0 項)之間隨機選擇一個數字:
Ranndomize
rndWord = Int((intWordsLeft - 0 + 1) * Rnd + 0)
之后我們將 intWordsLeft 值減 1;這樣做是為了始終記住我們現在要處理的單詞比之前所處理的少了一個。
那么我們需要這個隨機數字做什么呢?我們現在要做的就是使用該值從 Dictionary 中隨機抽取一個單詞。為此,我們可以創建一個 Dictionary 項的集合,然后在變量 strText 中存儲此隨機選擇的數據項數字的值:
colItems = objDictionary.Items
strText = colItems(rndWord)
換句話說,Banana 當前為 Dictionary 中的第 1 項。假定在生成隨機數字的時候得到的是 1。這意味著我們將從 Dictionary 中將第 1 項的值取出;然后,也就意味著單詞 Banana 被存儲在變量 strText 中。 
明白了嗎?從 Dictionary 中隨機取出一個單詞之后,我們即需要將該值存儲到某個地方。為此我們使用數組 arrWords,使 strText 成為數組中的第一項:
Words(z) = strText
我們如何知道該值應成為第一項?因為我們將該值賦給第 z 項,而第 z 項等于 0。之后,我們立即將 z 加 1,z 將等于 1。這也意味著,通過循環下一次我們會將檢索到的值賦給數組中的第二項。
單詞 Banana 使用過之后,下一步就是將該單詞從 Dictionary 中刪除;否則我們可能會再次使用該單詞。要刪除此單詞,只需調用 Dictionary 對象的 Remove 方法,將變量 strText 作為要刪除的項進行傳遞即可:
objDictionary.Remove(strText)
一切均順利完成之后,數組 arrWords 將包含一個從文本文件中所取出的已打亂順序的單詞的列表:
Banana
Elephant
Giraffe
Apple
Fish
Carrot
Horse
Dog
很好,是吧?隨后我們只要打開文件 Words.txt(這次是進行寫入),然后使用已打亂順序的列表 arrWords 替換現有內容即可:
復制代碼 代碼如下:

Set objFile = objFSO.OpenTextFile("c:\scripts\words.txt", ForWriting) 
For Each strItem in arrWords 
    objFile.WriteLine strItem 
Next 
objFile.Close 
下次您的女兒(誰的女兒都一樣)運行教育程序的時候,她所看到的將是以隨機方式顯示的單詞。
順便說一句,我們并沒有像人們所謠傳的那樣對此專欄的文本進行了該腳本的測試。在您好,腳本專家!專欄中的單詞可不是隨機選擇的;每個單詞都是我們花了無數的時間進行辛勤的探索和耕耘所得到的。
事實上,就在我們做完所有認真細致的耕耘之后。我們的編輯又將所有單詞的順序隨機打亂。如果您能看到該專欄編輯之前的樣子,就一定會為它的美妙而吃驚不已!(編輯附注:您看到的會是這種編輯之前的情況:將您吃驚感到。使用不會但是單詞這個我“美妙”。)

標簽:玉林 嘉興 六安 延安 臺灣 漳州 廣安 周口

巨人網絡通訊聲明:本文標題《編寫可以打開文本文件并打亂在該文件中所找到的單詞順序的vbs腳本》,本文關鍵詞  編寫,可以,打開,文本,文件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《編寫可以打開文本文件并打亂在該文件中所找到的單詞順序的vbs腳本》相關的同類信息!
  • 本頁收集關于編寫可以打開文本文件并打亂在該文件中所找到的單詞順序的vbs腳本的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品二区一区二区aⅴ污介绍| 久久免费美女视频| av在线一区二区| 一区二区三区中文字幕精品精品 | 国产福利91精品| 国产精品自拍网站| 狠狠色2019综合网| 日韩女优毛片在线| 免费av成人在线| 日韩视频在线永久播放| 亚洲三级在线免费观看| 成人av动漫在线| 免费国产亚洲视频| 国产一区二区伦理片| 欧美极品美女视频| 69p69国产精品| 五月天欧美精品| 亚洲国产精品一区二区www| 国产蜜臀97一区二区三区| 91麻豆精品国产91| 精品一区二区三区在线播放视频 | 一区二区欧美视频| 国产欧美日韩不卡| 久久99国内精品| 日韩黄色免费网站| 91精品国产综合久久福利| 国产亚洲1区2区3区| 精品国产一区二区三区久久久蜜月| 韩国女主播成人在线观看| 亚洲精品中文字幕乱码三区| 久久久欧美精品sm网站| 成人精品免费看| 一区二区三区四区国产精品| 中文字幕高清一区| 日韩美一区二区三区| 中文一区二区完整视频在线观看| 国产盗摄视频一区二区三区| 国产日韩影视精品| 国产夫妻精品视频| 精品久久久久久久久久久院品网| 欧美性色综合网| 91天堂素人约啪| 国产河南妇女毛片精品久久久 | 麻豆传媒一区二区三区| 久久久精品黄色| 欧美一区二区视频观看视频| 精品电影一区二区三区| 亚洲精选免费视频| 国产一区二区三区观看| 亚洲欧美日韩小说| 国产精品久久夜| 精品久久久久久久久久久久包黑料 | 久久先锋资源网| 精品一区二区日韩| 麻豆精品一区二区| 日韩美女精品在线| 欧美人狂配大交3d怪物一区| 91丨国产丨九色丨pron| 7777精品伊人久久久大香线蕉的 | 国产成+人+日韩+欧美+亚洲| 成人av电影在线播放| 不卡电影免费在线播放一区| 久久99国产精品久久| 亚洲成人一区二区| 日韩伦理电影网| 亚洲欧美在线另类| 亚洲欧美成aⅴ人在线观看| 国产视频一区在线观看| 亚洲免费av网站| 国产一区在线观看麻豆| jiyouzz国产精品久久| 婷婷六月综合网| 亚洲欧美色图小说| 日韩精品一区二区三区视频播放| 国产99久久久国产精品潘金网站| 亚洲欧洲99久久| 午夜久久久久久久久久一区二区| 欧美三级三级三级爽爽爽| 中文字幕在线观看一区二区| 中文文精品字幕一区二区| 亚洲精品高清在线观看| 国产精品一区二区你懂的| 国产一区二区看久久| 亚洲色图一区二区三区| 日韩综合小视频| 91久久久免费一区二区| 2024国产精品| 亚洲成在线观看| 欧美精品一区二区三区很污很色的 | 久久久久久久网| 男人的天堂久久精品| 欧美高清视频在线高清观看mv色露露十八 | 高清av一区二区| 日本电影欧美片| 一区二区欧美在线观看| 在线视频国内自拍亚洲视频| 国产精品不卡一区| 国产一区二区三区国产| 成人av网址在线| 欧美一区二区三区免费观看视频| 日韩美女精品在线| 在线观看区一区二| 国产精品国产自产拍在线| 色综合激情久久| 国产欧美精品区一区二区三区| 成人小视频免费观看| 欧美肥胖老妇做爰| 偷拍一区二区三区| 欧美三电影在线| 亚洲综合图片区| 欧美一区二区视频观看视频| 奇米精品一区二区三区在线观看| 久久久精品综合| 久久美女艺术照精彩视频福利播放 | 精品99久久久久久| 国产欧美一区二区三区网站| 99久久精品国产精品久久| 精品毛片乱码1区2区3区| 国产黄色成人av| 奇米精品一区二区三区在线观看一 | 夜夜夜精品看看| 亚洲国产美国国产综合一区二区| 欧美一区二区视频网站| 亚洲精品视频免费看| 一区二区在线看| 在线电影院国产精品| 欧美一二三四在线| 欧美精品日韩精品| 欧美三级电影在线观看| 一区二区三区中文在线观看| 一区二区三区欧美亚洲| 欧美电影在线免费观看| 青青青爽久久午夜综合久久午夜| 欧美精品一区二区三区蜜臀| av成人动漫在线观看| 五月综合激情日本mⅴ| 日韩视频一区二区三区| 久久精品免费在线观看| 欧美性色综合网| 国产一区美女在线| 在线观看av不卡| 亚洲一区在线看| 一色屋精品亚洲香蕉网站| 国产亚洲欧美一级| 日韩午夜av一区| 日韩欧美亚洲另类制服综合在线 | 欧美日韩中文字幕一区二区| 99久久精品国产观看| 国产精品亚洲综合一区在线观看| 美国精品在线观看| 国产麻豆视频精品| 国产精品18久久久久久久久| 国产成人在线观看免费网站| 国产亚洲一区二区三区| 亚洲精品亚洲人成人网| 亚洲欧美色综合| 无码av中文一区二区三区桃花岛| 亚洲免费在线观看| 一区二区三区日韩精品视频| 国产精品免费丝袜| 日韩电影网1区2区| 国产福利一区二区三区视频| 日韩视频一区在线观看| 午夜不卡av免费| 久久免费电影网| 国产成人av福利| 五月天视频一区| 国产精品初高中害羞小美女文| 欧美丝袜第三区| 91亚洲精品久久久蜜桃网站| 麻豆精品一区二区三区| 视频一区中文字幕国产| 亚洲美女少妇撒尿| 久久久久久黄色| 亚洲v日本v欧美v久久精品| 精品一区二区免费| 欧美日韩在线播| 久久久久久9999| 国产mv日韩mv欧美| 精品欧美一区二区三区精品久久 | 日本国产一区二区| 在线观看欧美日本| 欧美成人精品福利| 午夜精品aaa| 久久99久久99小草精品免视看| www.性欧美| 日本精品一级二级| 欧美特级限制片免费在线观看| 色婷婷激情久久| 国产日韩成人精品| 欧美久久一区二区| 国产精品久久久久久亚洲伦| 亚洲综合在线视频| 欧美中文字幕一二三区视频| 国产精品美女久久久久aⅴ| 一级特黄大欧美久久久| 国产一区二区三区蝌蚪| 欧美一区二区三区视频免费| 亚洲国产美国国产综合一区二区 | 蜜臀精品一区二区三区在线观看|