HTML部分

<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx.cs"Inherits="up6.index" %>

<!DOCTYPEhtmlPUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<htmlxmlns="http://www.w3.org/1999/xhtml">

<head>

<metahttp-equiv="Content-Type"content="text/html; charset=gb2312"/>

<title>up6-多标签演示页面</title>

<linkhref="js/up6.css"type="text/css"rel="Stylesheet"charset="gb2312"/>

<scripttype="text/javascript"src="js/jquery-1.4.min.js"></script>

<scripttype="text/javascript"src="js/json2.min.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.config.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.app.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.edge.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.file.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.folder.js"charset="utf-8"></script>

<scripttype="text/javascript"src="js/up6.js"charset="utf-8"></script>

<scriptlanguage="javascript"type="text/javascript">

var cbMgr = new HttpUploaderMgr();

cbMgr.event.md5Complete = function (obj, md5) { /*alert(md5);*/ };

cbMgr.event.fileComplete = function (obj) { /*alert(obj.fileSvr.pathSvr);*/ };

cbMgr.event.queueComplete = function () { $(document.body).append("队列完成<br/>"); }

cbMgr.event.addFdError = function (jv) { alert("本地路径不存在:" + jv.path); };

cbMgr.event.scanComplete = function (obj) { /*alert(obj.folderSvr.pathLoc);*/ };

cbMgr.Config["Cookie"] = 'ASP.NET_SessionId=<%=Session.SessionID%>';

cbMgr.Config.Fields["uid"] = 0;

$(function ()

{

cbMgr.load_to("FilePanel");

//上传指定文件

$("#btnUpF").click(function () {

var path = $("#filePath").val();

cbMgr.app.addFile({ pathLoc: path });

});

//上传指定目录

$("#btnUpFd").click(function () {

var path = $("#folderPath").val();

cbMgr.app.addFolder({ pathLoc: path });

});

});

</script>

</head>

<body>

<p>up6多标签上传演示页面</p>

<p><ahref="db/clear.aspx"target="_blank">清空数据库</a></p>

<p><ahref="filemgr/index.aspx"target="_blank">文件管理器演示</a></p>

<p><ahref="index2.aspx"target="_blank">单面板演示</a></p>

<p><ahref="down2/index.htm"target="_blank">打开下载页面</a></p>

<p><ahref="index-single.htm"target="_blank">单文件上传演示</a></p>

<p>

文件路径:<inputid="filePath"type="text"size="50"value="D:\\360safe-inst.exe"/>&nbsp;

<inputid="btnUpF"type="button"value="上传本地文件"/>

</p>

<p>

目录路径:<inputid="folderPath"type="text"size="50"value="C:\\Users\\Administrator\\Desktop\\test"/>&nbsp;

<inputid="btnUpFd"type="button"value="上传本地目录"/>

</p>

<divid="FilePanel"></div>

<divid="msg"></div>

</body>

</html>

代码部分

using  System;

using  System.Collections;

using  System.ComponentModel;

using  System.Data;

using  System.Drawing;

using  System.Web;

using  System.Web.SessionState;

using  System.Web.UI;

using  System.Web.UI.WebControls;

using  System.Web.UI.HtmlControls;

namespace  WebPortal

{

///  <summary>

///  UpLoad  的摘要说明。

///  实现多文件上传

///  </summary>

public  class  Upload  :  System.Web.UI.Page

{

protected  System.Web.UI.WebControls.Button  UploadButton;

protected  System.Web.UI.WebControls.Label  strStatus;

private  void  Page_Load(object  sender,  System.EventArgs  e)

{

///  在此处放置用户代码以初始化页面

if  (this.IsPostBack)  this.SaveImages();

}

private  Boolean  SaveImages()

{

///'遍历File表单元素

HttpFileCollection  files    =  HttpContext.Current.Request.Files;

///  '状态信息

System.Text.StringBuilder  strMsg  =  new  System.Text.StringBuilder();

strMsg.Append("上传的文件分别是:<hr  color=red>");

try

{

for(int  iFile  =  0;  iFile  <  files.Count;  iFile++)

{

///'检查文件扩展名字

HttpPostedFile  postedFile  =  files[iFile];

string  fileName,  fileExtension;

fileName  =  System.IO.Path.GetFileName(postedFile.FileName);

if  (fileName  !=  "")

{

fileExtension  =  System.IO.Path.GetExtension(fileName);

strMsg.Append("上传的文件类型:"  +  postedFile.ContentType.ToString()  +  "<br>");

strMsg.Append("客户端文件地址:"  +  postedFile.FileName  +  "<br>");

strMsg.Append("上传文件的文件名:"  +  fileName  +  "<br>");

strMsg.Append("上传文件的扩展名:"  +  fileExtension  +  "<br><hr>");

///'可根据扩展名字的不同保存到不同的文件夹

///注意:可能要修改你的文件夹的匿名写入权限。

postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/")  +  fileName);

}

}

strStatus.Text  =  strMsg.ToString();

return  true;

}

catch(System.Exception  Ex)

{

strStatus.Text  =  Ex.Message;

return  false;

}

}

#region  Web  窗体设计器生成的代码

override  protected  void  OnInit(EventArgs  e)

{

//

//  CODEGEN:  该调用是  ASP.NET  Web  窗体设计器所必需的。

//

InitializeComponent();

base.OnInit(e);

}

///  <summary>

///  设计器支持所需的方法  -  不要使用代码编辑器修改

///  此方法的内容。

///  </summary>

private  void  InitializeComponent()

{

this.ID  =  "Upload";

this.Load  +=  new  System.EventHandler(this.Page_Load);

}

#endregion

}

}

选择文件夹

js部分

后端代码逻辑大部分是相同的,目前能够支持MySQL,Oracle,SQL。在使用前需要配置一下数据库,可以参考我写的这篇文章:http://blog.ncmem.com/wordpress/2019/08/07/java超大文件上传与下载/

ASP.NET大文件上传断点续传解决方案的更多相关文章

  1. Web大文件上传断点续传解决方案

    最近遇见一个需要上传百兆大文件的需求,调研了七牛和腾讯云的切片分段上传功能,因此在此整理前端大文件上传相关功能的实现. 在某些业务中,大文件上传是一个比较重要的交互场景,如上传入库比较大的Excel表 ...

  2. JS大文件上传断点续传解决方案

    1 背景 用户本地有一份txt或者csv文件,无论是从业务数据库导出.还是其他途径获取,当需要使用蚂蚁的大数据分析工具进行数据加工.挖掘和共创应用的时候,首先要将本地文件上传至ODPS,普通的小文件通 ...

  3. vue大文件上传断点续传解决方案

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

  4. .net大文件上传断点续传解决方案

    HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...

  5. PHP大文件上传断点续传解决方案

    1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...

  6. JAVA大文件上传断点续传解决方案

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id=" ...

  7. JSP大文件上传断点续传解决方案

    我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...

  8. Asp.net mvc 大文件上传 断点续传

    Asp.net mvc 大文件上传 断点续传 进度条   概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这 ...

  9. 使用NeatUpload控件实现ASP.NET大文件上传

    使用NeatUpload控件实现ASP.NET大文件上传 一般10M以下的文件上传通过设置Web.Config,再用VS自带的FileUpload控件就可以了,但是如果要上传100M甚至1G的文件就不 ...

随机推荐

  1. [转帖]Docker常用命令总结

    Docker常用命令总结 http://www.ha97.com/5546.html 发表于: Linux, 互联网, 虚拟化与云计算 | 作者: 博客教主 标签: docker,常用命令,总结 PS ...

  2. MHA搭建

    https://metacpan.org 下载perl依赖包的网站 ##################上传安装依赖包#################### mkdir /opt/soft_file ...

  3. php设计模式之注册模式

    注册模式,解决全局共享和交换对象.已经创建好的对象,挂在到某个全局可以使用的数组上,在需要使用的时候,直接从该数组上获取即可.将对象注册到全局的树上.任何地方直接去访问. <?php class ...

  4. MySQL之无限级分类表设计

    首先查找一下goods_cates表和table_goods_brands数据表 分别使用命令: root@localhost test>show columns from goods_cate ...

  5. 解决WordPress百度分享图标不显示问题

    最近在帮朋友维护博客时,发现他的百度分享居然不能使用了,首先很多人会认为,百度分享挂在那里就是一种摆设,又没有几个人去分享,有什么含义呢?其实挂百度分享的含义是非常重要的,网站增加一个百度分享是可以增 ...

  6. poj2226-Muddy Fields二分匹配 最小顶点覆盖 好题

    题目 给到一个矩阵,有些格子上是草,有些是水.需要用宽度为1,长度任意的若干块木板覆盖所有的水,并不能覆盖草,木板可以交叉,但只能横竖放置,问最少要多少块板. 分析 经典的矩阵二分图构图和最小点覆盖. ...

  7. php运行结果设置无缓存

    修改配置php.ini vim /usr/local/php/lib/php.ini opcache.enable= 重启php服务 service php-fpm restart done! 参考地 ...

  8. RSA 加密长度计算公式

    The length of data that can be encrypted using RSA is determined primarily by the size of the key yo ...

  9. 分布式的几件小事(九)zookeeper都有哪些使用场景

    1.zookeeper介绍 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提 ...

  10. 基于Websocket的websocketd

    WebSocket是什么 WebSocket是HTML5下面的一种技术,设计出来的目的就是要取代轮询和 Comet 技术,使客户端浏览器具备像 C/S 架构下桌面系统的实时通讯能力. 浏览器通过 Ja ...