我正在尝试删除文件末尾的最后一个^
和换行符。此代码适用于小文件,但不适用于非常大的文件。我正在考虑以块或者最后一部分来阅读文件,但我不知道该怎么做。
Dim text As String
Dim intLength As Integer
Dim strEnd As String
text = File.ReadAllText(pstrOutputFolder & "tblzTF2FORMS_" & pstrFormType & ".txt")
intLength = Len(text)
strEnd = Right(text, 2)
If strEnd = "^" & vbLf & "" Then
intLength = intLength - 2
text = Left(text, intLength)
File.WriteAllText(pstrOutputFolder & "tblzTF2FORMS_" & pstrFormType & ".txt", text)
End If
答案 0 :(得分:1)
以块的形式读取整个文件,逐步将所有数据写入第二个临时文件(当然最后两个字符除外)将是您最好的选择。当您使用FileStream
时,可以搜索给定位置然后覆盖单个字节,但这仅在您使用相同长度的新数据覆盖数据时才有效。当你截断时,这不起作用。