在我VB.net應用我使用只有在vb.net中未打開的情況下,才能刪除vb.net中的pdf文件?
System.Diagnostics.Process.Start("c:\TEMP\MyFile.pdf").
我想安全地刪除此文件中的某些事件,如果它是不開放打開PDF文件。
在我VB.net應用我使用只有在vb.net中未打開的情況下,才能刪除vb.net中的pdf文件?
System.Diagnostics.Process.Start("c:\TEMP\MyFile.pdf").
我想安全地刪除此文件中的某些事件,如果它是不開放打開PDF文件。
簡單地試圖刪除文件:
System.IO.File.Delete("THEFILE")
如果該文件是開放的,這行代碼會拋出異常。你可以(也應該)通過用Try
和Catch
塊來包裝它來處理這種情況。例如:
Try
' Attempt to delete the file. This will succeed unless the file is in use.
System.IO.File.Delete("THEFILE")
Catch ex As IOException
' The file was in use, so it cannot be deleted.
' Do something here...or nothing if you just want to ignore such a case.
End Try
您的問題是要求幫助刪除文件,如果它沒有打開。你似乎不喜歡即使他們這樣做的迴應。
只有在沒有使用文件時纔想刪除該文件嗎?在這種情況下,你可以使用Try... Catch
。如果它拋出一個異常,那麼它正在使用 - 而你不想刪除它,否則你刪除它。
但是,您給出的回覆看起來好像您要刪除它。請記住,在將它加載到vb中後,它將被分類爲正在使用,並且您聲稱完成使用時需要進行處理。它不會在每次空閒時處理。如果要使用它,請使用.Dispose
方法處理它,或者將其保留爲Nothing
。
要檢測它是否已打開,請嘗試將其打開。如果它已經打開,它會拋出異常。請參閱http://stackoverflow.com/a/11288781 –