C#一次上传多文件

一次上传一张图片,这些都很简单,不过要是需要一次性上传10多张图片,其实也是一样的,只不过将其改成使用数组上传。

C#一次上传多文件_第1张图片

需要将Input的multiple="multiple" 改成这个之后,就可以进行多选图片,使用form表单提交:

使用到的js链接:https://pan.baidu.com/s/1t5fwDt7pYIBPiUdj8UCZug 提取码:rjgu

后台代码:

 

接收前台发来的文件

 

      for (int i = 0; i < Files.Count; i++) {

         if (Files[i] != null) {

          //文件类型 后缀

           string fileExtension = Path.GetExtension(Files[i].FileName);//不包含文件扩展名的名称 不带后缀//string fileName = Path.GetFileNameWithoutExtension(Files[i].FileName);

//原始文件名称

 string oldFileName = Files[i].FileName;

  //文件名称,添加时间字符串,避免文件名称相同

  string fileName = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ffff") + fileExtension;

    if (Directory.Exists(AppDomain.CurrentDomain.BaseDirectory + "Temp\\") == false){  Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + "Temp\\"); }

  //保存文件的路径

  //  string filePath = Server.MapPath("~/Document/Temp/") + fileName;

    string LocalPath = AppDomain.CurrentDomain.BaseDirectory + "Temp\\" + fileName;

 

 //保存文件

 Files[i].SaveAs(LocalPath);

    }

 }

 

使用For循环将前台传输过来的图片保存在项目里面,多文件上传到此结束。

效果图:

C#一次上传多文件_第2张图片

 

C#一次上传多文件_第3张图片

 

其实多图片上传和多文件上传都是一样的,没有什么区别,一开始不懂,走了许多的弯路,因为很少做多文件上传,上传都是一个一个文件上传的,所以有点脑筋转不过来,后来在网上找了许多的资料,学者别人一样,使用数组就可以完美解决多文件上传。

 

 

 

 

 

你可能感兴趣的:(个人,C#,上传文件)