2012-07-26 76 views
4

某個文本文件被另一個進程持續佔用以更新其內容,並且我需要我的應用程序一次性清除其內容。我想FileStream的fileshare.ReadWrite屬性可能是有用的,但我不是100%確定。如何清除另一個進程正在使用的文本文件

如何清除另一個進程擁有的文本文件?

+15

這取決於打開文件時使用的其他進程的標誌。如果它專門鎖定它,你可以簡單地忘記從你的進程中修改這個文件,而不會終止釋放句柄的擁有進程。另一種可能性是修改另一個進程,以便它在打開句柄時不鎖定文件。 – 2012-07-26 14:03:41

+0

@DarinDimitrov可能無法正常工作。假設另一個進程已經分配了文件大小N並正在寫入文件末尾,他不能截斷它,對吧? – 2012-07-26 14:05:02

+0

@ChrisShain,正如我所說的,這將取決於打開該文件的句柄時其他進程使用的標誌。 – 2012-07-26 14:06:04

回答

0

爲什麼不使用空字符串覆蓋txt文件?

System.IO.File.WriteAllText("filepath to the txt doc", emptystring make sure to initialize); 
+1

我懷疑問題在於OP無法獲得對該文件的寫入權限,因此無法刪除或覆蓋 – Basic 2012-07-27 16:26:45

相關問題