,,ASP.NET实现文件上传

,,ASP.NET实现文件上传

本文主要详细介绍了ASP.NET文件上传的实现。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

在本文中,我们分享了ASP.NET文件上传的具体代码,供大家参考。具体如下。

.NET中C/S和B/S上传文件不同

B/S和C/S的文件上传性质完全不同。

C/S中文件上传的基本原理是通过Socket网络将目标文件从客户端计算机发送到目标服务器计算机,然后将接收到的数据转换成原始文件。

文件转换为字节流发送到服务器将字节流转换为文件保存

在B/S中,文件上传是指在客户端浏览器上选择目标文件后,通过网络将文件发送到目标服务器计算机上,然后将接收到的文件保存在服务器计算机上。

B/S上传文件

页面:

% @ Page Language=' c# ' AutoEventWireup=' true ' code behind=' web form 1 . aspx . cs ' Inherits=' uploadfile demo。WebForm1' %

!文档类型html

html xmlns=' http://www . w3 . org/1999/XHTML '

head runat='server '

meta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8'/

标题/标题

/头

身体

表单id='form1' runat='server '

差异

请选择要上传的文件:ASP:file upload ID=' fileup ' runat=' server '/

ASP:button ID=' btnUpload ' runat=' server ' text=' Start uploading ' OnClick=' btnUpload _ Click '/

ASP:Literal ID=' lblMsg ' runat=' server '/ASP:Literal

/div

/表单

/body

/html

事件:

使用系统;

使用系统。集合。泛型;

使用系统。Linq

使用系统。Web

使用系统。Web . UI

使用系统。Web . UI.WebControls

使用系统。配置;

命名空间上传文件演示

{

公共分部类WebForm1 : System。网页界面

{

受保护的void Page_Load(对象发送方,EventArgs e)

{

}

受保护的void btnUpload_Click(对象发送方,EventArgs e)

{

//[1]确定文件是否存在。

if (fileup。哈希文件)

{

//[2]获取文件大小,判断是否符合设置要求。

双文件长度=文件向上。file content . Length/(1024.0 * 1024.0);

//在配置文件中获取上载文件大小的限制

double limeitLength=Convert。ToDouble(ConfigurationManager。AppSettings[' file maxlength '])/1024.0;

if(文件长度长度长度)

{

LblMsg。Text=$ '上载的文件不能超过{ limeitLength } MB ';

返回;

}

//[3]获取文件名,判断文件扩展名是否符合要求。

字符串fileName=fileup。文件名;

//确定该文件是否为exe文件。

如果(文件名。子字符串(文件名。LastIndexOf(' . ')).ToLower()=='。exe’)

{

LblMsg。Text='无法上传应用程序';

返回;

}

//[4]修改文件名

//一般情况下,上传的文件在服务器保存时不会取原文件名,因为客户端用户庞大,需要保证每个客户端上传的文件不会被覆盖。

文件名=日期时间。now . ToString(' yyyymmdd hhmmssms ')' _ '文件名;//年、月、日、分、秒、毫秒_原始文件名防止文件的绝对覆盖。

//[5]获取存储在服务器中的文件的路径

//'~ '表示应用程序的根目录。从服务器的根目录看。

//'' Shift键' `'键在左上角

字符串路径=服务器。MapPath(' ~/UpFile ');

//[6]上传文件

尝试

{

归档。另存为(路径“/”文件名);//参数:上传文件的完整路径,以及路径的文件名'/'

LblMsg。Text='文件上传成功';

}

catch(例外ex)

{

LblMsg。Text=$ '文件上传失败{例如。消息}”;

}

}

}

}

}

个人资料:

?xml版本='1.0 '编码='utf-8 '?

!-

有关如何配置ASP.NET应用程序的更多信息,请访问。

https://go.microsoft.com/fwlink/?LinkId=169433

-

配置

appSettings

!-配置上传文件的最大字节数:kb单位-!- 30MB -

add key=' file maxlength ' value=' 30720 '/

/appSettings

system.web

编译调试=' true '目标框架=' 4。6 .1 '/

!- httpRuntime中可以设置请求的最大字节数maxRequestLength -

httpRuntime目标框架=' 4。6 .1 ' maxRequestLength=' 40960 '/

/system.web

system.codedom

编译程序

编译器语言=' c#;cs;cs harp"extension=" .cs '

type='Microsoft .CodeDom。提供商。dotnetcompilerplate。csharpcodeprovider,MicrosoftCodeDom。提供商。dotnetcompilerplate,版本=2.0.1.0,区域性=非特定,公钥标记=31bf 3856 ad 364 e 35 '

警告级别=' 4 '编译器选项='/lang version:default/nowarn:1659;1699;1701'/

编译器语言=' vbvbsvisualbasicVBScript " extension=" .vb '

type='Microsoft .CodeDom。提供商。dotnetcompilerplate。' vbcodeprovider,Microsoft .'CodeDom。提供商。dotnetcompilerplate,版本=2.0.1.0,区域性=非特定,公钥标记=31bf 3856 ad 364 e 35 '

警告级别=' 4 '编译器选项='/lang version:default/nowarn:41008/define:_ MYTYPE=\ quot;Web \ quot/optionInfer '/

/编译器

/system.codedom

/配置

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: