多文件上传示例源码(默认支持各种类型,包括图片)

简介:

前几天在园子里发布了一个图片上传(加水印、缩略图、远程保存)的简单例子 ,很受大家的欢迎,这类再发布一个多文件上传示例源码(默认支持各种类型,包括图片)的例子,可以同时批量上传文件(包括图片)

网上包括园子里有很多多文件上传的例子,但是没有完整的示例代码,本人整理了一下发布出来,这样更直观,希望对大家有所帮助

开发环境VS2005

下载该源码

部分源码

None.gif   public  partial  class  _Default : System.Web.UI.Page
ExpandedBlockStart.gif    
{
InBlock.gif        
static public ArrayList hif = new ArrayList(); // 保存文件列表
InBlock.gif
        public int filesUploaded = 0// 上传文件的数量
InBlock.gif

InBlock.gif        
protected void Page_Load(object sender, EventArgs e)
ExpandedSubBlockStart.gif        
{
InBlock.gif
ExpandedSubBlockEnd.gif        }

ExpandedSubBlockStart.gif       
/// <summary>
InBlock.gif        
/// 将要上传的文件添加到listbox中
InBlock.gif       
/// </summary>
InBlock.gif       
/// <param name="sender"></param>
ExpandedSubBlockEnd.gif       
/// <param name="e"></param>

InBlock.gif
InBlock.gif        
protected void AddFile_Click(object sender, EventArgs e)
ExpandedSubBlockStart.gif        
{
InBlock.gif            
if (Page.IsPostBack == true)
ExpandedSubBlockStart.gif            
{
InBlock.gif                hif.Add(FindFile);
InBlock.gif                FileList.Items.Add(FindFile.PostedFile.FileName);
ExpandedSubBlockEnd.gif            }

InBlock.gif            
else
ExpandedSubBlockStart.gif            
{ }
InBlock.gif
ExpandedSubBlockEnd.gif        }

InBlock.gif
ExpandedSubBlockStart.gif        
/// <summary>
InBlock.gif        
/// 从listbox中删除指定的文件
InBlock.gif        
/// </summary>
InBlock.gif        
/// <param name="sender"></param>
ExpandedSubBlockEnd.gif        
/// <param name="e"></param>

InBlock.gif        protected void RemvFile_Click(object sender, EventArgs e)
ExpandedSubBlockStart.gif        
{
InBlock.gif            
if (FileList.SelectedIndex == -1)
ExpandedSubBlockStart.gif            
{
InBlock.gif                TipInfo.Text 
= "错误 - 必须指定要删除的文件.";
InBlock.gif                
return;
ExpandedSubBlockEnd.gif            }

InBlock.gif            
else if (FileList.Items.Count != 0)
ExpandedSubBlockStart.gif            
{
InBlock.gif                hif.RemoveAt(FileList.SelectedIndex);
InBlock.gif                FileList.Items.Remove(FileList.SelectedItem.Text);
InBlock.gif                TipInfo.Text 
= "";
ExpandedSubBlockEnd.gif            }
           
InBlock.gif
ExpandedSubBlockEnd.gif        }

InBlock.gif
ExpandedSubBlockStart.gif          
/// <summary>
InBlock.gif  
/// 循环上传listbox中的文件到指定的文件夹下
InBlock.gif  
/// </summary>
InBlock.gif  
/// <param name="sender"></param>
ExpandedSubBlockEnd.gif  
/// <param name="e"></param>

InBlock.gif        public void Upload_ServerClick(object sender, System.EventArgs e)
ExpandedSubBlockStart.gif        
{
InBlock.gif            
string baseLocation = Server.MapPath("UploadFiles/"); // 上传路径   
InBlock.gif
            string status = "";  // 上传成功后显示的文件列表         
InBlock.gif

InBlock.gif            
if ((FileList.Items.Count == 0&& (filesUploaded == 0))
ExpandedSubBlockStart.gif            
{
InBlock.gif                TipInfo.Text 
= "错误 - 必须指定要上传的文件.";
InBlock.gif                
return;
ExpandedSubBlockEnd.gif            }

InBlock.gif            
else
ExpandedSubBlockStart.gif            
{
InBlock.gif                
foreach (System.Web.UI.HtmlControls.HtmlInputFile HIF in hif)
ExpandedSubBlockStart.gif                
{
InBlock.gif                    
try
ExpandedSubBlockStart.gif                    
{
InBlock.gif                        
string fn = System.IO.Path.GetFileName(HIF.PostedFile.FileName);
InBlock.gif                        HIF.PostedFile.SaveAs(baseLocation 
+ fn);
InBlock.gif                        filesUploaded
++;
InBlock.gif                        status 
+= fn + "<br>";
ExpandedSubBlockEnd.gif                    }

InBlock.gif                    
catch (Exception err)
ExpandedSubBlockStart.gif                    
{
InBlock.gif                        TipInfo.Text 
= "上传错误 " + baseLocation
InBlock.gif                         
+ "<br>" + err.ToString();
ExpandedSubBlockEnd.gif                    }

ExpandedSubBlockEnd.gif                }

InBlock.gif
InBlock.gif                
if (filesUploaded == hif.Count)
ExpandedSubBlockStart.gif                
{
InBlock.gif                    TipInfo.Text 
= "共上传了 " + filesUploaded + " 个文件。 <br>" + status;
ExpandedSubBlockEnd.gif                }

InBlock.gif                hif.Clear();
InBlock.gif                FileList.Items.Clear();
ExpandedSubBlockEnd.gif            }

InBlock.gif
ExpandedSubBlockEnd.gif        }

ExpandedBlockEnd.gif    }



本文转自 liudao 博客园博客,原文链接:http://www.cnblogs.com/liudao/archive/2007/04/10/706835.html,如需转载请自行联系原作者

相关文章
原生php实现自定义表单(支持基本类型+file类型(单文件上传))
原生php实现自定义表单(支持基本类型+file类型(单文件上传))
|
9月前
|
PHP
PHP实现自制随机图片API- 调用文件夹和引用网络图片
PHP实现随机图片API- 调用文件夹和引用网络图片
110 0
|
7月前
|
API
调用图片转PDF功能时返回DocProcessError错误
调用图片转PDF功能时返回DocProcessError错误
44 3
|
7月前
|
移动开发 HTML5
HTML5 图片上传预览(调用摄像头、文件)demo效果示例(整理)
HTML5 图片上传预览(调用摄像头、文件)demo效果示例(整理)
|
9月前
|
存储 Java
Java实现文件上传到本地(自定义保存路径)
Java实现文件上传到本地(自定义保存路径)
610 0
|
11月前
|
存储 小程序
小程序图片上传,存储,获取,显示(含源码)
小程序图片上传,存储,获取,显示(含源码)
243 0
|
11月前
|
小程序 前端开发 JavaScript
小程序上传多张图片到springboot后台,返回可供访问的图片链接
小程序上传多张图片到springboot后台,返回可供访问的图片链接
11627 0
|
PHP 计算机视觉
yii2.0上传图片的时候如何实现自动压缩?
yii2.0上传图片的时候如何实现自动压缩?
231 0
|
前端开发
前端学习案例2-blob对象实现文件的下载和图片预览2
前端学习案例2-blob对象实现文件的下载和图片预览2
85 0
前端学习案例2-blob对象实现文件的下载和图片预览2
|
前端开发
前端学习案例1-blob对象实现文件的下载和图片预览1
前端学习案例1-blob对象实现文件的下载和图片预览1
116 0
前端学习案例1-blob对象实现文件的下载和图片预览1