Как я могу создать копию файла, который я только что загрузил на сервер, используя C #?

#c# #asp.net #file-upload

#c# #asp.net #загрузка файла

Вопрос:

Я загружаю файл на сервер и сохраняю его с помощью FileUpload.Метод SaveAs() в C #.

Когда я загружаю этот файл, я также хочу создать копию того же файла в другой папке, чтобы я мог манипулировать копией и сохранять оригинал таким, какой он есть. Как я могу это сделать, используя C #?

До сих пор мне удавалось сохранять файл в папке MyFolder на сервере.

 if (FileUpload1.HasFile)
            {
                string path = Path.GetFileName(FileUpload1.FileName);
                path = path.Replace(" ", "");
                FileUpload1.SaveAs(Server.MapPath("~/myFolder/")   path);  
  

Буду признателен за любую помощь!

Ответ №1:

Вы можете использовать File.Copy() from System.IO .

 string path = Path.GetFileName(FileUpload1.FileName);
path = path.Replace(" ", "");
FileUpload1.SaveAs(Server.MapPath("~/myFolder/")   path); 

string source = Server.MapPath("~/myFolder/")   path;
string destination = Server.MapPath("~/myotherfolder/")   path;
File.Copy(source, destination);
  

File.Copy имеет перегрузку, если вы хотите перезаписать существующий файл с тем же именем:

 File.Copy(source, destination, true); // overwrite existing file.