java vbs_VBS基础篇 - vbscript Dictionary对象

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

运行结果截图:

f6bd3e74ad56041ca583369adb6f733d.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/431030.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java integer最大值_五分钟学会java中的基础类型封装类

在刚刚学习java的时候,老师不止一次的说过java是一种面向对象的语言,万物皆对象。对于java中的基础数据类型,由于为了符合java中面向对象的特点,同样也有其封装类。这篇文章对其有一个认识。一、基本认识其实在jdk1.5之前&#xf…

web.xml文件位于web项目的目录结构中的_看完这篇,别人的开源项目结构应该能看懂了...

我为什么要写这篇近来,和不少初学Spring或Spring Boot的小伙伴私信交流了关于项目目录结构划分和代码分层的问题。很多小伙伴表示网上下载下来的开源项目看不懂,项目结构和代码分层看得很蒙,不知道应该以一个什么样的思路去学习和吸收别人的项…

mysql workbench中文设置_使用Workbench完成流体压力渗透分析

“之前的案例,APDL Showcase3里使用到了流体压力渗透载荷。有朋友读到以后,希望能在Workbench里实现这一功能。有需求就有动力,我们来试一试。 ”01—结果展示先看计算结果:(为了截图方便将模型旋转了90度)该案例为轴对称模型&…

ddns客户端_DDNS哪家最方便?试试看Mikrotik的ROS!

没有固定IP的情况下,想要提供外网访问,那么DDNS是必不可少的一个设置。DDNS(Dynamic Domain Name Server,动态域名服务)是将用户的动态IP地址映射到一个固定的域名解析服务。需要注意的是,不是域名是动态的…

python中级程序员是什么水准_程序员进阶:一篇搞懂Python中级应用

异常处理:try-except 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,在Python无法正常处理程序时就会发生一个异常。 异常是Python对象,表示一个错误。当Python脚本发生异常时我们…

python做excel表格代码_[宜配屋]听图阁

安装两个库:pip install xlrd、pip install xlwt1.python读excel——xlrd2.python写excel——xlwt1.读excel数据,包括日期等数据#codingutf-8import xlrdimport datetimefrom datetime import datedef read_excel():#打开文件wb xlrd.open_workbook(rte…

python分布式框架_高性能分布式执行框架——Ray

Ray是UC Berkeley RISELab新推出的高性能分布式执行框架,它使用了和传统分布式计算系统不一样的架构和对分布式计算的抽象方式,具有比Spark更优异的计算性能。 Ray目前还处于实验室阶段,最新版本为0.2.2版本。虽然Ray自称是面向AI应用的分布式…

原 hibernate与mysql字段类型对应关系

原 hibernate与mysql字段类型对应关系 发表于8个月前(2015-04-17 08:56) 阅读(1102) | 评论(0) 2人收藏此文章, 我要收藏赞01月16日厦门 OSC 源创会火热报名中,奖品多多哦 摘要 hibernate与mysql字段类型对应关系 …

下拉选择框 其他_列表框 vs 下拉列表,哪个更好?

许多UI控件允许用户选择选项,它们包括复选框、单选按钮、切换开关、步进器、列表框和下拉列表。 在本文中,作者对列表框和下拉列表进行了定义,讨论何时使用各个元素,以及各个情况下使用哪一种更加合适。摘要列表框和下拉列表是紧凑…

springboot整合elasticsearch_Spring Boot学习10_整合Elasticsearch

一、Elasticsearch概念•以 员工文档 的形式存储为例:一个文档代表一个员工数据。存储数据到 ElasticSearch 的行为叫做 索引 ,但在索引一个文档之前,需要确定将文档存储在哪里。•一个 ElasticSearch 集群可以 包含多个 索引 ,相…

php制作图片轮播_图片轮播效果实现方法

图片轮播效果如何实现呢本文主要介绍了JQuery实现图片轮播效果的制作原理以及实现代码,文章末尾附上源码下载,具有很好的参考价值。下面跟着小编一起来看下吧,希望能帮助到大家。用JQuery操作DOM确实很方便,并且JQuery提供了非常人…

python有趣的面试题_一道3行代码的Python面试题,我懵逼了...|python基础教程|python入门|python教程...

https://www.xin3721.com/eschool/pythonxin3721/ 前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 今天来说说交流群里一位群友问的Python题目。刚开始由于没有电脑,我也没有运行出来&…

个人应用开发详记. (三)

好久没来更新了... IM即时通讯已进入最后阶段. 各个功能模块 框架基本写好. 剩下的就是细节上的优化了 由于内容上并没有什么大幅度的变动 . 就不上图了 . 元旦回家 放假3天~ 争取年前搞定此APP 转载于:https://www.cnblogs.com/ImyFen/p/5089968.html

r语言清除变量_如何优雅地计算多变量 | R语言进阶

社会科学研究经常会遇到“超多变量”的情况——多量表、多维度、多题项,以及复杂的正反计分题……如何更高效地计算量表总分?如何更简洁地进行反向计分?传统的统计工具(Excel、SPSS等)虽然也能解决这些问题&#xff0c…

php模板初级教程,风格模板初级不完全修改教程

风格模板初级不完全修改教程更新时间:2006年10月09日 00:00:00 作者:就自己的一点点经验,希望能给初接触模版修改的朋友有个参考。关于模版修改, 引用星星签名里的一句话“学好HTML很重要” :)一个风格,…

语音对讲软件_微信语音转播软件是哪个?怎样一键转发?

文末送社群运营资料有一句话说得好,好马配好鞍,如果经验丰富的社群工作人员想要看到良好的社群运营效果,那单单凭借个人的力量是远远不够的,建议将希望寄托在第三方工具的身上,比如微信语音转播软件就是绝佳选择。按照…

php if require,关于php:required_if Laravel 5验证

我有一个表格,用户可以填写出售房屋的信息。 对于其中一项投入,用户必须选择"待售"或"待租"天气。 如果是For Sale,则会出现两个价格输入字段,如果是For Rent,则会基于jQuery显示一些其他价格输入…

asp.net 安装element ui_不用上官网,自己部署一套Element官方最新文档

ElementUI官方的访问速度一直很慢,公司内网也无法进行外网访问。故研究了下最新的ElementUI API(2.13.2)部署教程。先上效果图ElementUI文档部署过程到github下载最新的elementui源码,这里我使用git下载到本地git clone https://github.com/ElemeFE/elem…

如何写一个计算器?

考虑这样一个问题,给定一个字符串,“11(34)-2*38/2”,如何将它转化为如下形式: “112” “347” “279” “2*36” “9-63” “8/24” “347” 换句话说,就是如何将字符串按照四则运算计算出来,如何写一个计…

由于在客户端检测到一个协议错误_HTTP协议,你了解多少?

HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP是一个属于应用层的面向对象的协议&am…