我需要直接将一个文件附加到另一个文件的末尾,但我不想将整个文件加载到内存中,并且使用缓冲区接缝比直接方法要慢得多......(要附加实际字节,而不是文本文件...)
问问题
2437 次
1 回答
1
您可以使用FileMode.Append
:
Using reader = File.OpenRead(pathRead)
Using writer = New FileStream(pathWrite, FileMode.Append)
Dim b = reader.ReadByte()
While b <> -1
writer.WriteByte(CByte(b))
b = reader.ReadByte()
End While
End Using
End Using
Append 如果文件存在则打开文件并查找文件末尾,或创建一个新文件。这需要 FileIOPermissionAccess.Append 权限。FileMode.Append 只能与 FileAccess.Write 结合使用。试图在文件结尾之前寻找一个位置会引发 IOException 异常,并且任何读取尝试都会失败并引发 NotSupportedException 异常。
于 2013-06-18T14:41:19.063 回答