vbs的字典存入和读取操作 comparemode属性

导航

1.代码演示
2.步骤过程
3.comparemode属性
4.也可以用for each来遍历item集合
————————————————————————————————————————

我们先看一下关于字典操作

option explicit
const LAST = 0				'列下标为0const FIRST = 1
const PHONE = 2
dim dicPhoneList,strItemRead	'定义字典对象和下面要读取的变量
set dicPhoneList = createobject("scripting.dictionary")		'创建字典对象
FillPhoneList					'向字典中添加数据
searchPhoneList				'根据输入的电话来寻找数据

sub FillPhoneList						  '电话册创建
	dim strItemAdd(2,0)				  '定义一个二维数组(列,行)
	dim strkey						  '作为索引的值,相当于key
	
	strItemAdd(LAST,0) = "williams"	   '数组进行赋值
	strItemAdd(FIRST,0) = "tony"
	strItemAdd(PHONE,0) = "404-556-1235"
	strkey = strItemAdd(PHONE,0)			'让key等于它的电话号码
	dicPhoneList.add strkey,strItemAdd   '存入key和数组,以后可以根据key所存放的电话号码来找
end sub

sub searchPhoneList
	dim strphone
	strphone = inputbox("请输入电话:")        '输入对应电话号码
	if dicPhoneList.Exists(strphone) then		   '判断对象中是否存在输入电话号码的key值
		strItemRead = dicPhoneList.Item(strPhone)     '存在的话找到该目录,并将其赋给一个变量
		msgbox "we found" & "last:" & strItemRead(LAST,0) &  vbNewLine & _	'根据这个变量找到其中的数据,打印出来
		"first:" & strItemRead(FIRST,0) &vbNewLine & _
		"Phone:" & strItemRead(PHONE,0)
	else
		msgbox "无此号码的信息"
	end if
end sub

1.首先是创建字典对象:

set dicPhoneList = createobject(“scripting.dictionary”) '创建字典对象

2.存入两个值:一个是key值(就是后面可以根据key值来索引的),另一个可以存放任意数据类型

dicPhoneList.add strkey,strItemAdd '存入key和数组,以后可以根据key所存放的电话号码来找

————————————————————————————————————————
注释:有三种不同的添加方式
在这里插入图片描述
————————————————————————————————————————
3.让一个变量接收由key找到的对象:

strItemRead = dicPhoneList.Item(strPhone) '存在的话找到该目录,并将其赋给一个变量

4.再由这个变量进行输出:(根据这个变量来索引)

msgbox “we found” & “last:” & strItemRead(LAST,0) & vbNewLine & _ '根据这个变量找到其中的数据,打印出来
“first:” & strItemRead(FIRST,0) &vbNewLine & _
“Phone:” & strItemRead(PHONE,0)

注释:(也可以直接省略第三步直接打印出来)
在这里插入图片描述

在这里插入图片描述
大小写敏感意思是:abc和ABC视为不重复
不敏感:abc与ABC视为相同

————————————————————————————————————————

也可以用for each 来访问item集合
如:

sub searchPhoneList
	dim strphone
	strphone = inputbox("请输入电话:")        '输入对应电话号码
	if dicPhoneList.Exists(strphone) then		   '判断对象中是否存在输入电话号码的key值
		for each strItemRead in dicPhoneList.Item(strPhone)  '进行遍历,并将每次遍历结果放入str字符串中
			str = str & strItemRead  & vbNewLine
		next
	else
		msgbox "无此号码的信息"
	end if
	msgbox str 
end sub
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长路 ㅤ   

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值