2013-08-01 85 views
0

請告訴我爲什麼file.Delete(gpath)不工作?如何刪除C文件#

我會非常感謝你:)如果在這段代碼上有任何錯誤,那麼就告訴你這個錯誤。這段代碼可能是錯誤的,所以請告訴我。

 string gpath; 

     string [email protected]"c:\Users\Adam\Desktop\"; 

     string name="file"; 

     string f=""; 

     int i=0; 

     string ext=".txt"; 

     while(File.Exists(path + name + f + ext)) 
     { 
      i++; 

      f = i.ToString(); 
     } 

     gpath = path + name + f + ext; 

     button2.Enabled = true; 

     File.Create(gpath); 

     File.Delete(gpath);//why there is an Error?? 
+8

呃,什麼錯誤? – Crisfole

+1

我想你可以做'File.Create(gpath).Close();'你正在創建和刪除文件的任何原因立即? –

+0

感謝凱文DiTragila :) –

回答

5

File.Create返回您還沒有配置的FileStream,所以有一個打開的句柄到文件中。當您嘗試刪除附帶有句柄的文件時,您會收到錯誤消息,指出該文件正在使用中。

我不知道爲什麼你要在創建文件後直接刪除文件,所以如果你解釋你最終試圖做的事情,可能有更好的方法去實現它。

+0

我是初學者在C#這就是我問這個問題給你...非常感謝我的兄弟:) –

+0

@ user2642928 - 沒問題,高興地幫助:)我只是說,如果有什麼特別你想要做的,我可以試着給你一個很好的做法。 – keyboardP

+0

感謝主席先生幫助我:) –