一、分析
本次博客,主要解决文件上传等一系列问题,将从两方面来论述,即1G以内文件和1G以上文件。
对于上传1G以内的文件,可以采用基本的三种上传方法:用Web控件FileUpload、html控件HtmlInputFile和用Html元素<input type="file" id="file"/>,通过Request.Files上传。
对于1G以上的大文件,思路为:
(1)协议:可采用http协议或ftp协议
(2)断点续传
(3)使用插件
(4)非插件形式实现
二、文件大小属于[0,1G]范围
html控件HtmlInputFile实现上传:
1、上传界面
2、前端代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<!DOCTYPE html>
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head runat = "server" >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" />
< title ></ title >
</ head >
< body >
< form id = "form1" runat = "server" >
< div >
< input type = "file" id = "file1" runat = "server" />
< asp:Button ID = "btnUpLoad" runat = "server" Text = "上传" OnClick = "btnUpLoad_Click" />
< asp:Label ID = "Label1" runat = "server" Text = "" Style = "color: Red" ></ asp:Label >
</ div >
</ form >
</ body >
</ html >
|
3、后端代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
protected void btnUpLoad_Click( object sender, EventArgs e)
{
//string serverpath = Server.MapPath("~/ImageFile");
if (file1.PostedFile.ContentLength > 0)
{
if (File.Exists( @"C:\Users\WJM\Desktop\FilesUpLoad\" + file1.PostedFile.FileName))
{
Label1.Text = "文件已经存在" ;
}
else
{
file1.PostedFile.SaveAs( @"C:\Users\WJM\Desktop\FilesUpLoad\" + file1.PostedFile.FileName);
Label1.Text = "上传成功!" ;
}
}
else
{
Label1.Text = "上传失败" ;
}
}
|
4、配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<? xml version = "1.0" encoding = "utf-8" ?>
<!--
有关如何配置 ASP.NET 应用程序的详细信息,请访问
http://go.microsoft.com/fwlink/?LinkId=169433
-->
< configuration >
< system.web >
< httpRuntime executionTimeout = "36000" delayNotificationTimeout = "36000" maxRequestLength = "2147483647" targetFramework = "4.5" ></ httpRuntime >
< compilation debug = "true" targetFramework = "4.5" />
<!--<httpRuntime targetFramework="4.5" />-->
</ system.web >
< system.webServer >
< security >
< requestFiltering >
< requestLimits maxAllowedContentLength = "2147483648" />
</ requestFiltering >
</ security >
</ system.webServer >
</ configuration >
|
注释:对于配置文件不太熟悉的朋友,可以参照我的另一篇博客:ASP.NET Web.config
Web控件FileUpload实现
1、上传界面
三、文件大小属于[1G,10G]范围
注释:未完,敬请期待。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/wangjiming/archive/2017/01/10/6267387.html