VBS基礎(chǔ)篇 - vbscript Dictionary對(duì)象
Dictionary是存儲(chǔ)數(shù)據(jù)鍵和項(xiàng)目對(duì)的對(duì)象,其主要屬性有Count、Item、Key,主要方法有Add、Exists、Items、Keys、Remove、RemoveAll。
創(chuàng)建Dictionary對(duì)象
'定義并創(chuàng)建Dictionary對(duì)象,使用CreateObject創(chuàng)建并返回自動(dòng)化對(duì)象的引用
Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
添加鍵值
Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
'向Dictionary對(duì)象中添加鍵值對(duì)
Dic.Add "Name", "Sirrah" 'Add方法第一個(gè)參數(shù)是Key值,第二個(gè)是Item值
Dic.Add "Age", 23
刪除鍵值
Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
Dic.Add "Name", "Sirrah" '向Dictionary對(duì)象中添加鍵值對(duì)
Dic.Add "Age", 23
Dic.Item("Age") = 22 '修改鍵Age的值
MsgBox Dic.Item("Age") '輸出22
判斷鍵是否存在
Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
Dic.Add "Name", "Sirrah" '向Dictionary對(duì)象中添加鍵值對(duì)
Dic.Add "Age", 23
MsgBox Dic.Exists("Age") '判斷鍵是否存在
輸出所有鍵值
輸出Dictionary對(duì)象所有鍵值,這邊將介紹2種常用的循環(huán)方法,具體代碼如下:
Dim Dic,Dics
Set Dic = CreateObject("Scripting.Dictionary")
Dic.Add "Name", "Sirrah" '向Dictionary對(duì)象中添加鍵值對(duì)
Dic.Add "Age", 23
Dics = dic.Items 'Items返回一個(gè)包含所有Item值的數(shù)組
For i = 0 To dic.Count - 1 'Count返回Dictionary對(duì)象鍵數(shù)目
str = str & Dics(i) & vbCrlf
Next
MsgBox(str)
Dim Dic,Dics
Set Dics = CreateObject("Scripting.Dictionary")
Dics.Add "Name", "Sirrah" '向Dictionary對(duì)象中添加鍵值對(duì)
Dics.Add "Age", 23
For Each Dic In Dics '循環(huán)遍歷Dictionary鍵,并輸出鍵值
MsgBox Dics.Item(Dic)
Next
補(bǔ)充一個(gè)實(shí)例
腳本文件:a.vbs,包含字典的添加、刪除、判斷鍵是否存在、修改鍵、修改值、遍歷、統(tǒng)計(jì)鍵值對(duì)個(gè)數(shù)
'建立字典
Dim Dict : Set Dict = CreateObject("Scripting.Dictionary")
'添加鍵值對(duì)
Dict.Add "Key1", "Item1"
Dict.Add "Key2", "Item2"
Dict.Add "Key3", "Item3"
'字典中鍵值對(duì)數(shù)量
WScript.Echo "字典中現(xiàn)有鍵值對(duì)數(shù)量: " & Dict.Count '讓一個(gè)腳本在屏幕上顯示文本信息
WScript.Echo
'檢查指定鍵是否存在
If Dict.Exists("Key1") Then
WScript.Echo "Key1 存在!"
Else
WScript.Echo "Key1 不存在!"
End If
If Dict.Exists("Keyn") Then
WScript.Echo "Keyn 存在!"
Else
WScript.Echo "Keyn 不存在!"
End If
WScript.Echo
'遍歷字典
Sub TraverseDict
Dim DictKeys, DictItems, Counter
DictKeys = Dict.Keys
DictItems = Dict.Items 'Items返回一個(gè)包含所有Item值的數(shù)組
For Counter = 0 To Dict.Count - 1 'Count返回Dictionary對(duì)象鍵數(shù)目
WScript.Echo _
"鍵: " & DictKeys(Counter) & _ '& 字符串連接運(yùn)算符
"值: " & DictItems(Counter)
Next
End Sub
TraverseDict
WScript.Echo
'在一個(gè)鍵值對(duì)中,修改鍵或修改值
Dict.Key("Key2") = "Keyx"
Dict.Item("Key1") = "Itemx"
TraverseDict
WScript.Echo
'刪除指定鍵
Dict.Remove("Key3")
TraverseDict
WScript.Echo
'刪除全部鍵
Dict.RemoveAll
WScript.Echo "字典中現(xiàn)有鍵值對(duì)數(shù)量: " & Dict.Count
調(diào)用方法:通過(guò)雙擊a.bat調(diào)用,a.bat代碼如下:
cscript a.vbs
pause
運(yùn)行結(jié)果截圖:

相關(guān)文章
vbs腳本和windows定時(shí)任務(wù)實(shí)現(xiàn)qq消息表情包定時(shí)發(fā)送功能
這篇文章主要介紹了vbs腳本和windows定時(shí)任務(wù)實(shí)現(xiàn)qq消息表情包定時(shí)發(fā)送,整個(gè)過(guò)程不用過(guò)多的程序運(yùn)行,我們借助vbs腳本和windows定時(shí)任務(wù)去實(shí)現(xiàn)這一功能,需要的朋友可以參考下2022-01-01
純vbs實(shí)現(xiàn)zip壓縮與unzip解壓縮函數(shù)代碼
用VBS解壓ZIP文件,網(wǎng)上搜到的多數(shù)是調(diào)用WinRAR,一點(diǎn)技術(shù)含量也沒(méi)有。聽(tīng)說(shuō)可以用純vbs實(shí)現(xiàn),特整理給大家,已經(jīng)過(guò)測(cè)試。喜歡的朋友可以測(cè)試下。2011-01-01
教你編寫Windows的VBScript與Mac的AppleSCript腳本解放雙手
這篇文章主要介紹了教你編寫Windows的VBScript腳本與Mac的AppleSCript腳本來(lái)解放大家的雙手,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02
用VBS調(diào)用程序并對(duì)程序的運(yùn)行情況進(jìn)行監(jiān)控的兩個(gè)代碼
用VBS調(diào)用程序并對(duì)程序的運(yùn)行情況進(jìn)行監(jiān)控的兩個(gè)代碼...2007-03-03
VBS教程:VBscript語(yǔ)句-Function 語(yǔ)句
VBS教程:VBscript語(yǔ)句-Function 語(yǔ)句...2006-11-11
使用 Iisext.vbs 列出 Web 服務(wù)擴(kuò)展文件的方法
這篇文章主要介紹了如何使用 iisext.vbs 在本地或遠(yuǎn)程計(jì)算機(jī)上列出 Web 服務(wù)擴(kuò)展文件,需要的朋友可以參考下2014-07-07
用VBS實(shí)現(xiàn)的批量gb2312轉(zhuǎn)utf-8,支持拖動(dòng)
用VBS實(shí)現(xiàn)的批量gb2312轉(zhuǎn)utf-8,支持拖動(dòng)...2007-10-10

