您当前的位置: 首页 >  网络

dawn

暂无认证

  • 7浏览

    0关注

    204博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

使用VBScript读取网络的日志数据进行处理

dawn 发布时间:2022-06-11 15:04:31 ,浏览量:7

  在交换机数据被读取出来后,可以使用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  

  有了上面的处理,后面可以做的事情就比较多了。

关注
打赏
1664252102
查看更多评论
立即登录/注册

微信扫码登录

0.2249s