我目前无法从文本文件中删除前两行。我在下面使用下面的代码。它在一个小文本文件上工作完美,但它不适用于非常大的文本文件。我一直试图让这个工作的文件大小超过130,000kb。VBS从文件中删除行
我没有收到任何错误消息,它只是删除文件中的所有内容,使其完全空白。无论如何,我可以得到这个工作?
Const FOR_READING = 1
Const FOR_WRITING = 2
strFileName = "\\File\test Scp\ZRAS.txt"
iNumberOfLinesToDelete = 2
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objTS = objFS.OpenTextFile(strFileName, FOR_READING)
strContents = objTS.ReadAll
objTS.Close
arrLines = Split(strContents, vbNewLine)
Set objTS = objFS.OpenTextFile(strFileName, FOR_WRITING)
For i=0 To UBound(arrLines)
If i > (iNumberOfLinesToDelete - 1) Then
objTS.WriteLine arrLines(i)
End If
Next
MSGBOX "Done"
你的标题说 “VBS”,这似乎是指为VBScript。你的标签说“vb.net”。你的代码看起来像VB6。哪三个呢?他们不是一回事。 –
适合我作为VBA使用。可能是VBS不支持的东西。请注意,您正在写入源文件并在此过程中销毁它。如果出现问题,数据就消失了。最好写入一个新文件,然后删除旧文件(或者重命名为BAK名称,可能带有文件名中的日期),然后重新命名新文件。 – rheitzman
我正在使用VBS我修复了标签。我试图写入一个新文件,并没有奏效。它适用于小文件,但我正在处理的文件非常大,出于某种原因,它不会在它上面工作。 – user2974995