当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > vbs删除文本文件的行的函数

VBScript
VBS教程:对象-正则表达式(RegExp)对象
VBS教程:对象-Matches 集合
VBS教程:对象-Match 对象
VBS教程:对象-Err
VBS教程:对象-Class 对象
VBS教程:VBScript 对象
VBS教程:字符集 (0 - 127)
VBS教程:方法-Test 方法
VBS教程:方法-Replace 方法
VBS教程:方法-Raise 方法
VBS教程:方法-Execute 方法
VBS教程:方法-Clear 方法
VBS教程:函数-Year 函数
VBS教程:函数-WeekDayName 函数
VBS教程:函数-Weekday 函数
VBS教程:函数-VarType 函数
VBS教程:函数-UCase 函数
VBS教程:函数-UBound 函数
VBS教程:函数-TypeName 函数
VBS教程:函数-TimeValue

VBScript 中的 vbs删除文本文件的行的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 150 ::
收藏到网摘: n/a

Delete Line Function
复制代码 代码如下:

Function DeleteLine(strFile, strKey, LineNumber, CheckCase)
'DeleteLine Function by TomRiddle 2008
'Remove line(s) containing text (strKey) from text file (strFile)
'or
'Remove line number from text file (strFile)
'or
'Remove line number if containing text (strKey) from text file (strFile)
'Use strFile = "c:\file.txt" (Full path to text file)
'Use strKey = "John Doe" (Lines containing this text string to be deleted)
'Use strKey = "" (To not use keyword search)
'Use LineNumber = "1" (Enter specific line number to delete)
'Use LineNumber = "0" (To ignore line numbers)
'Use CheckCase = "1" (For case sensitive search )
'Use CheckCase = "0" (To ignore upper/lower case characters)

Const ForReading=1:Const ForWriting=2
Dim objFSO,objFile,Count,strLine,strLineCase,strNewFile
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objFile=objFSO.OpenTextFile(strFile,ForReading)
Do Until objFile.AtEndOfStream
strLine=objFile.Readline
If CheckCase=0 then strLineCase=ucase(strLine):strKey=ucase(strKey)
If LineNumber=objFile.Line-1 or LineNumber=0 then
If instr(strLine,strKey) or instr(strLineCase,strkey) or strKey="" then
strNewFile=strNewFile
Else
strNewFile=strNewFile&strLine&vbcrlf
End If
Else
strNewFile=strNewFile&strLine&vbcrlf
End If
Loop
objFile.Close
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objFile=objFSO.OpenTextFile(strFile,ForWriting)
objFile.Write strNewFile
objFile.Close
End Function

使用方法:
DeleteLine "c:\1.txt", "", 1, 0