【发布时间】:2011-05-23 05:21:48
【问题描述】:
我有一个已打开并被另一个程序使用的日志文件,我使用以下内容读取了它的内容:
Dim strContents As String
Dim x As New FileStream(FullPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
Dim objReader As StreamReader
objReader = New StreamReader(x)
strContents = objReader.ReadToEnd()
objReader.Close()
这适用于在其他程序仍在使用文件时从文件中读取文本,但是,在此之后我需要立即截断文本文件(不删除它),使其再次为空白。但该文件仍将被其他程序使用。
我试过了
Dim sWrite As StreamWriter
sWrite = New System.IO.StreamWriter(FullPath, False)
sWrite.Write("")
sWrite.Close()
但我得到“正在被另一个应用程序使用”异常。我试过查看 StackOverflow 和谷歌搜索,但我似乎找不到答案,我也找不到使用文件流执行此操作的方法,或者我会尝试使用
Dim fs As New FileStream(FullPath, FileMode.Open, FileAccess.Write, FileShare.ReadWrite)
提前致谢。
【问题讨论】:
标签: c# .net vb.net file process