脚本专栏 
首页 > 脚本专栏 > 浏览文章

VBS基础篇 - vbscript Dictionary对象

(编辑:jimmy 日期: 2024/12/26 浏览:3 次 )

Dictionary是存储数据键和项目对的对象,其主要属性有Count、Item、Key,主要方法有Add、Exists、Items、Keys、Remove、RemoveAll。
创建Dictionary对象 

'定义并创建Dictionary对象,使用CreateObject创建并返回自动化对象的引用
Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")

添加键值 

Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
'向Dictionary对象中添加键值对
Dic.Add "Name", "Sirrah" 'Add方法第一个参数是Key值,第二个是Item值
Dic.Add "Age", 23  

删除键值   

Dim Dic
Set Dic = CreateObject("Scripting.Dictionary")
Dic.Add "Name", "Sirrah" '向Dictionary对象中添加键值对
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对象中添加键值对
Dic.Add "Age", 23
MsgBox Dic.Exists("Age") '判断键是否存在 

输出所有键值
输出Dictionary对象所有键值,这边将介绍2种常用的循环方法,具体代码如下:

Dim Dic,Dics
Set Dic = CreateObject("Scripting.Dictionary")
Dic.Add "Name", "Sirrah" '向Dictionary对象中添加键值对
Dic.Add "Age", 23
Dics = dic.Items 'Items返回一个包含所有Item值的数组
For i = 0 To dic.Count - 1 'Count返回Dictionary对象键数目
 str = str & Dics(i) & vbCrlf
Next
MsgBox(str)
Dim Dic,Dics
Set Dics = CreateObject("Scripting.Dictionary")
Dics.Add "Name", "Sirrah" '向Dictionary对象中添加键值对
Dics.Add "Age", 23
For Each Dic In Dics '循环遍历Dictionary键,并输出键值
 MsgBox Dics.Item(Dic)
Next

补充一个实例

脚本文件:a.vbs,包含字典的添加、删除、判断键是否存在、修改键、修改值、遍历、统计键值对个数

'建立字典
Dim Dict : Set Dict = CreateObject("Scripting.Dictionary")

'添加键值对
Dict.Add "Key1", "Item1"
Dict.Add "Key2", "Item2"
Dict.Add "Key3", "Item3"

'字典中键值对数量
WScript.Echo "字典中现有键值对数量: " & Dict.Count '让一个脚本在屏幕上显示文本信息

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返回一个包含所有Item值的数组
 For Counter = 0 To Dict.Count - 1 'Count返回Dictionary对象键数目
 WScript.Echo _
  "键: " & DictKeys(Counter) & _ '& 字符串连接运算符
  "值: " & DictItems(Counter)
 Next
End Sub

TraverseDict

WScript.Echo 

'在一个键值对中,修改键或修改值
Dict.Key("Key2") = "Keyx"
Dict.Item("Key1") = "Itemx"
TraverseDict

WScript.Echo 

'删除指定键
Dict.Remove("Key3")
TraverseDict

WScript.Echo 

'删除全部键
Dict.RemoveAll
WScript.Echo "字典中现有键值对数量: " & Dict.Count

调用方法:通过双击a.bat调用,a.bat代码如下:

cscript a.vbs
pause

运行结果截图:

VBS基础篇 - vbscript Dictionary对象

上一篇:VBS数组函数学习实例分析
下一篇:vbs操作txt文本文件常用方法与函数代码
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap