一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - VBS - 用vbs實現文本循環讀取

用vbs實現文本循環讀取

2020-08-20 10:35anlegor VBS

因為測試中需要讀取一批URL數據進行瀏覽,為了方便使用txt保存配置url,另外腳本之家特為大家補充了比較好的配置讀取腳本,需要的朋友可以參考一下

因為測試中需要讀取一批URL數據進行瀏覽,其實使用QTP本身的table能實現多種讀取方式,但是因為需要tabel是使用excel保存的,在沒有安裝excel的機器或者vsita機器上運行該部分腳本會遇到問題,為了不必要的麻煩,因而使用txt保存網址數據。

但是vbs好像沒有提供設置文件讀取位置的函數(python提供),網上沒有找到這塊可用的代碼,可能大家基本沒有我這么低級的需求吧囧rz……,后來還是搞定了,所以將代碼貼出來,以作備忘。其實核心就是發現讀取到文本的最后一行,那么重新打開該文件即可。

代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
msgbox(GetIni("d://vbscript//config.txt"))
Function GetIni(strIniFilePath )
 Const ForReading = 1
 Const TriStateTrue = -2
 Dim myFso
 Dim MyFile
 Set myFso = CreateObject("Scripting.FileSystemObject")
 Set MyFile = myFso.OpenTextFile(strIniFilePath,ForReading,False,TriStateTrue)
   GetIni = MyFile.ReadLine()
   If MyFile.AtEndOfStream=True Then
        Set MyFile = Nothing
        Set MyFile = myFso.OpenTextFile(strIniFilePath,ForReading,False,TriStateTrue)
   End If
 MyFile.Close
 Set MyFile = Nothing
 Set myFso = Nothing
End Function

config.txt

http://m.ythuaji.com.cn

上面的代碼比較簡單,而且只能獲取到第一行的數據,推薦大家用下面的代碼實現配置文件讀取

以下是一個讀取配置文件的函數:
本函數僅適用于以下格式的配置文件(.ini,.txt,.inf):

[Mark1]
key1=key1value
key2=key2value
........
[Mark2]
key1=key1value
key2=key2value

核心代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
'************************************************************
'功能:讀取配置文件(.ini,.txt格式)的配置項的值,并返回值
'參數:FilePath - 配置文件的完整路徑
' Mark - 配置開始標記
' Key - 需要獲取的配置項名稱
'調用方法:Ret = GetConfig("d:\configure.ini","Computer","IP")
'作者:虎肖至尊
'日期:2013-06-20
'************************************************************
Function GetConfig(FilePath,Mark,Key)
 Dim fso, Str_ReadLine
 Set fso = CreateObject("Scripting.FileSystemObject")
 '判斷配置文件是否存在
 If fso.FileExists(FilePath) Then
 '初始化配置標記,默認為未找到
 Flag = 0
 '打開配置文件
 Set ConfigFile = fso.opentextfile(FilePath, 1)
 '循環讀取文件數據行
 Do
 Str_ReadLine = ConfigFile.ReadLine
 WScript.Echo Str_ReadLine
 '判斷讀取的數據行是否為空
 If Str_ReadLine <> "" Then
 '判斷讀取數據行是否為需要查找的配置開始標記
 If LCase(Trim(Str_ReadLine))="[" & Lcase(Mark) & "]" Then
 '找到配置開始標記
 Flag = 1
 '循環讀取當前配置開始標記下的配置項,直到在當前配置標記下找到所需配置項
 '或下一個配置項開始標記出現時退出
 Do
 Str_ReadLine = ConfigFile.ReadLine
 retNum = InStr(Str_ReadLine,"=")
 '檢查讀取的配置項是否有等號
 If retNum > 0 Then
 '判斷獲取配置項名稱是否為所需的配置項
 If Trim(LCase(Left(Str_ReadLine,retNum-1)))= Trim(LCase(Key)) Then
 '獲取配置項等號后的數據
 GetConfig = Trim(Right(Str_ReadLine,Len(Str_ReadLine)-retNum))
 '找到后,退出函數
 Exit Function
 End If
 End If
 '判斷當前是否為下一個配置項開始標記
 If (InStr(Str_ReadLine,"[")>0 And InStr(Str_ReadLine,"]")>0) Then
 '標記當前配置項開始標記為下一個配置
 Flag = 0
 '退出函數
 Exit Function
 End If
 Loop Until (Flag = 0 Or ConfigFile.AtEndOfStream)
 End If
 End If
 Loop Until ConfigFile.AtEndOfStream
 '關閉文件
 ConfigFile.Close
 Set fso = Nothing
 Else
 '文件未找到,給出提示信息
 MsgBox "配置文件"&"[" & FilePath &"]不存在,請檢查路徑是否正確."
 End If
End Function

實例:

我們需要讀取d:\config\environment.ini文件的[Computer2]下的IP項的值,文件內容如下:

[Computer1]
ComputerName=Computer1
IP=192.168.1.1
[Computer2]
ComputerName=Computer2
IP=192.168.1.2

使用以上函數即可獲取

IP = GetConfig("d:\config\environment.ini","Computer2","IP")
Msgbox IP

好了到這里就完成了.

原文鏈接:https://blog.csdn.net/Anlegor/article/details/5673169

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人性色生活片免费网 | 色婷婷久久综合中文久久一本 | 亚洲 欧美 日本 国产 高清 | 护士让我吃奶我扒她奶 | 国产在线播放一区 | 天天摸天天爽视频69视频 | 欧美专区在线观看 | 亚洲欧美日韩国产一区图片 | 肉宠文很肉到处做1v1 | 武侠古典久久亚洲精品 | 盲井在线 | 成人免费视频在 | 国产午夜一区二区在线观看 | 国产剧情一区二区三区 | 97热在线 | 欧美一级专区免费大片俄罗斯 | 欧美亚洲另类在线观看 | 蜜桃在线| 成人免费视屏 | 含羞草传媒网站免费进入欢迎 | 亚洲视频免 | 国内精品久久久久久久久 | 99久久精品国内 | 亚洲高清一区二区三区久久 | 亚洲女同在线观看 | 毛片网站大全 | 日本一区二区三区久久精品 | 狠狠干在线观看 | 午夜伦伦电影理论片费看 | 国产美女做爰免费视频软件 | 免费一级特黄特色大片∵黄 | 亚洲日本视频在线 | 午夜精品久视频在线观看 | 操女人bb | 国产成人精品免费视频软件 | 色综合图片 | 国产成人亚洲精品91专区手机 | 青青青在线观看国产精品 | 国产真实一区二区三区 | 国产成人免费在线视频 | 国产精品福利在线观看秒播 |