c# - 如何使用 C# 复制刚刚上传到服务器的文件?
问题描述
我将文件上传到服务器并使用 C# 中的 FileUpload.SaveAs() 方法保存它。
当我上传这个文件时,我还想在不同的文件夹中制作同一个文件的副本,以便我可以操作副本并按原样保存原始文件。我怎样才能使用 C# 做到这一点?
到目前为止,我已经能够将文件保存在服务器中名为 myFolder 的文件夹中。
if (FileUpload1.HasFile)
{
string path = Path.GetFileName(FileUpload1.FileName);
path = path.Replace(" ", "");
FileUpload1.SaveAs(Server.MapPath("~/myFolder/") + path);
任何帮助将不胜感激!
解决方案
您可以使用File.Copy()
来自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.
推荐阅读
- javascript - 当我传递更新道具时,为什么钩子会在无限循环中自行触发?
- c++ - CMake项目Boost库错误:boost/config/compiler/gcc.hpp:165:10:致命错误:cstddef:没有这样的文件或目录
- javascript - 将除一些以外的每个第一个单词大写
- c - 全局指针和悬空指针
- php - 更新 woocommerce 产品字段,如 sku、尺寸、价格、名称、重量?
- latex - 狮身人面像自动模块,类名中没有文本换行(latexpdf)
- oop - 对 OOP 中单一职责的困惑
- android - 将屏幕高度与不同分辨率的布局文件相结合?
- r - 堆叠条形图在 x 轴上放置良好的日期
- c++ - 在某些循环内使用 vector.push_back 时出现分段错误