在交换机数据被读取出来后,可以使用VBScript脚本来编写读取程序。
可以写入到Excel或者其他文件中,也可以写入到数据库中。
在前面的文件中使用VBScript将数据写到了数据库中。
这里完成写入Excel文件中,方便进行各种分析处理。
代码:
'文件操作
dim TxtFileName
dim FilePath
dim ExcelRowCount
dim ExcelColName
TxtFileName="日志文件"
FilePath="文件路径"
Function RemoveSpace(StrSrc)
Dim re
Set re = New RegExp
're = CreateObject("vbscript.regexp")
re.Pattern = "\s+"
re.Global = True
RemoveSpace = re.Replace(StrSrc, ",")
End Function
'创建文件对象
set fso=CreateObject("Scripting.FileSystemObject")
'打开日志文件
set fo=fso.OpenTextFile(FilePath & "\" & TxtFileName,1,false)
'创建excel对象
Set excelObj = CreateObject("Excel.Application")
excelObj.visible=false
'打开excel文件
Set ExcelBook= excelObj.Workbooks.Open(FilePath & "\" & "Excel文件名")
'定位excel的工作簿
set ExcelSheet=excelObj.Worksheets("Sheet1")
'=============
'set ExcelBook=excelObj.workbooks.add
'set ExcelSheet=ExcelBook.worksheets(1)
ExcelRowCount=0
'按行读取数据文件
do while fo.AtEndOfStream true
'读取一行数据
line=fo.ReadLine
'去掉最后的空格
line=trim(line)
'将空格转换为,
line=RemoveSpace(line)
'提取数据到数组
Paras=Split(line,",")
if inStr(Paras(0),"XXX.YYY")=1 then
ExcelRowCount=ExcelRowCount+1
for i=0 to ubound(Paras)
ExcelColName= chr(65+i)
ExcelSheet.Range(ExcelColName & ExcelRowCount).Value=Paras(i)
'ExcelSheet.cells(i+1,ExcelRowCount).value=Paras(i)
'WScript.Echo Paras(i)
next
'WScript.Echo Chr(13)
end if
loop
excelObj.Workbooks(1).Save
fo.close
set fso=Nothing
ExcelBook.Close
excelObj.Quit
Set ExcelBook = Nothing
Set excelObj = Nothing
有了上面的处理,后面可以做的事情就比较多了。