我现在在删除文本文件中的行时遇到问题,在文本文件中删除一行字符串后,其上留有一个空格。这是我的代码。谢谢你们帮助我们。
iFileList = FreeFile
iFileList2 = FreeFile
Open App.Path & "\months\" & gMonth & ".txt" For Input As #iFileList
Do While Not EOF(iFileList)
Line Input #iFileList, sLine
tempHolder2 = Split(sLine, "/")
If Len(sLine) > 0 Then
If gDay = tempHolder2(0) Then
If tempHolder2(1) Like lvAlarm.selectedItem Then
'skip the line
Else
sNewText = sNewText & sLine & vbCrLf
End If
End If
End If
Loop
Close
Debug.Print (sNewText)
iFile = FreeFile
Open App.Path & "\months\" & gMonth & ".txt" For Output As #iFile
'sNewText = sNewText & vbCrLf
Print #iFile, Trim(sNewText)
Close
答案 0 :(得分:2)
我猜你所指的空白位于文件的末尾,而不是散布在其他行中的某个地方。如果是这种情况,我怀疑是因为在将sNewText变量的内容打印到文件时使用的Trim命令不会删除字符串末尾的最后一个回车符/换行符对。
要删除尾随换行符,您应该执行以下操作:
If Right$(sNewText,2) = vbCrLf Then
sNewText = Left$(sNewText, Len(sNewText) - 2)
End If