2014-03-13 47 views
0

我正在创建一个Web应用程序,在该应用程序中,我必须用fileupload上载的新文件替换已存在的上传文件。用新的上传文件替换旧文件

我使用下面的代码:

void UploadFile() 
    { 
     HttpPostedFile PostedFile = Request.Files["FileUploadExcel"]; 

     if (PostedFile != null && PostedFile.ContentLength > 0) 
     { 
      MyFile = Path.GetFileName(PostedFile.FileName); 

      PostedFile.SaveAs(Server.MapPath(Path.Combine("~/Data/", MyFile))); 
      Get_Data(MyFile); 
     } 
     else 
     { 
      LblMessage.Text = "Missing File"; 
      LblMessage.Visible = true; 
     } 
    } 

请更新代码,以取代与新上传文件的现有文件。

回答

1

只需添加

File.Delete(Server.MapPath(Path.Combine("~/Data/", MyFile))); 

您另存为调用之前。

3

试试这个。

//determine if file exist 
If(File.Exists(Server.MapPath(Path.Combine("~/Data/", MyFile)))) 
{ 
    //delete existing file 
    File.Delete(Server.MapPath(Path.Combine("~/Data/", MyFile))); 
} 

PostedFile.SaveAs(Server.MapPath(Path.Combine("~/Data/", MyFile))); 
+0

感谢reply.In你的情况下,将只删除相同的文件。我想用新的文件删除现有的文件。无论如何感谢您的回复.. –

0

试试这个:

if (FLUpload.PostedFile != null && FLUpload.PostedFile.FileName != "") 
{ 

    if (System.IO.Directory.Exists(Server.MapPath("~/Files/")) == false) 
    { 
     System.IO.Directory.CreateDirectory(Server.MapPath("~/Files/")); 
     System.IO.Directory.Delete(Server.MapPath("~/Files/") + path);  
    }     
    else 
    {     
     FLUpload.SaveAs(Server.MapPath(path)); 
    } 
} 
相关问题