加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码网 (https://www.900php.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

简单的VB小脚本之——文件处理脚本

发布时间:2020-12-24 19:23:06 所属栏目:百科 来源:网络整理
导读:昨晚客户发来邮件说,要求写个VB的小脚本来替换文件中指定的字符串,当时第一反应是,你直接拿个文本编辑器用查找/替换功能不就搞定了嘛,不过立刻就又反应过来,客户就是上帝。好吧,上帝要求我写个VB的脚本,我就满足上帝的需要,由于之前没有接触过VB脚

昨晚客户发来邮件说,要求写个VB的小脚本来替换文件中指定的字符串,当时第一反应是,你直接拿个文本编辑器用查找/替换功能不就搞定了嘛,不过立刻就又反应过来,客户就是上帝。好吧,上帝要求我写个VB的脚本,我就满足上帝的需要,由于之前没有接触过VB脚本,所以就现学现用,磕磕绊绊完成了以下这么一个样例,写的不好,有不妥之处,还望各位大神不吝赐教,小的一定虚心求教,感激涕零。

inputs=inputbox("Please enter the parameters,split them with '_' Param1:FileName Param2:oldStr Param3:newStr")
params=split(inputs,"_")
currentPath=CreateObject("Scripting.FileSystemObject").GetFolder(".").Path
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(currentPath & "" & params(0)) Then
	Set objFile=objFSO.OpenTextFile(currentPath & "" & params(0))
	str=objFile.ReadAll
	objFile.close
	oldStr=params(1)
	newStr=params(2)
	If oldStr <> "" Then
		str=replace(str,oldStr,newStr)
		tmpArray=split(params(0),".")
		Set newFile=objFSO.CreateTextFile(currentPath & "" & tmpArray(0) & "_New" & ".txt")
		newFile.write(str)
		newFile.close
	End If
Else
	Wscript.Echo "File does not exist."
End If
简单的介绍下使用方式,拷贝源码,粘贴到文件中,保存为.vbs格式文件,双击即可执行。将要处理的文件放在与脚本同级目录下,运行脚本之后,需要输入三个参数,参数一是文件名,参数二是要查找的字符串,参数三是要替换成的字符串,参数之间以"_"下划线来进行分割,文件名不为空,要查找的字符串和替换成的字符串可以为空,如果为空,则会将原文件中的内容输出到”原文件名_New.格式"文件中。

最后简单的总结下我刚接触VB几个小时的一些比较特殊的地方:

1,VB是CaseInSensitive的,也就是大小写不敏感

2,VB脚本中,获取Array数组的值的方式为tmpArray(0),注意,是小括号,不是之前熟悉的中括号,我在这上面卡了挺长时间

3,VB脚本中,&符号前后要有空格分开,其他的符号,例如,不等于号<>前后也需要有空格

很多时候我也会觉得自己现在涉及到的东西太多太杂,不过我觉得还是侧重点的问题吧,多学习多总结。

(编辑:源码网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读