FileUpload控件使用初步

 

FileUpload控件使用初步:

1.实现文件上传

protected void btnSubmit_click(object sender, EventArgs e)

{

if (FileUpload1.HasFile == true)

{

string strErr = "";

//获得上传文件的大小

int filesize = FileUpload1.PostedFile.ContentLength;

if (filesize > 1024 * 1024)

{

strErr += "文件大小不能大于 1MB\n";

}

if (strErr == "")

{

//获得服务器文件当前路径

string path = Server.MapPath("~");

//把上传文件保存在当前路径的 upload 文件夹中

FileUpload1.PostedFile.SaveAs(path  +  "\\upload\\"  +  FileUpload1.FileName);

lblInfo.Text = "文件保存成功";

}

}

else

{

lblInfo.Text = "请指定上传的文件";

}

}

2. 限定上传的文件的类型

//取得文件的扩展名,并转换成小写             string fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();             //限定只能上传jpg和gif图片             string[] allowExtension = { ".jpg", ".gif", ".txt", ".xls" };             //对上传的文件的类型进行判断             for (int i = 0; i < allowExtension.Length; i++)             {                 if (fileExtension == allowExtension[i])                 {                     fileOk = true;                     break;                 }             }

可以进一步利用FileUpload.PostedFile.ContentType属性进行文件类型判断:     string fileContentType = FileUpload1.PostedFile.ContentType;      if (fileContentType =="image/bmp"|| fileContentType =="image/gif"|| fileContentType =="image/pjpeg")      {

//-----       }

3.将上传文件的名称以时间命名

string fileName = Server.MapPath("~") + "\\upload\\" +   DateTime.Now.ToString("yyyyMMddHHmmss")+".jpg";

FileUpload1.SaveAs(fileName);

4.上传大文件

利用ASP.NET控件中的FileUpload控件时,有时候需要上传大容量的文件,可是默认情况下,上传文件的最大容量为4M。如果要实现更大的文件上传,可以在配置文件中改变两个默认设置:httpRuntime下的maxRequestLength和requestLengthDiskThreshold,前者规定了上传的最大容量值,后者设定缓存的大小,以KB为单位。 如:

<configuration>     <system.web>        ...        <httpRuntime maxRequestLength=”10240" requestLengthDiskThreshold=”100" />        ...     </system.web> </configuration>

上面的设置为可以上传不超过10MB的文件,并把缓存阈值改为100KB。

不过要注意,设置太大了会因用户将大量文件传递到该服务器而导致的拒绝服务攻击。

FileUpload控件使用初步的更多相关文章

  1. C# 自定义FileUpload控件

    摘要:ASP.NET自带的FileUpload控件会随着浏览器的不同,显示的样式也会发生改变,很不美观,为了提高用户体验度,所以我们会去自定义FileUpload控件 实现思路:用两个Button和T ...

  2. webform FileUpload控件实例应用 上传图片

    首先在根目录下建一个"images"文件: HTML: <form id="form1" runat="server"> < ...

  3. WebForm之FileUpload控件(文件上传)

    FileUpload控件要与Button.LinkButton.ImageButton配合使用 FileUpload控件的方法及属性: 1.SaveAs("要上传到服务器的绝对路径" ...

  4. ASP.NET让FileUpload控件支持浏览自动上传功能的解决方法

    ASP.NET的FileUpload控件默认是不支持服务端的onchange事件的,此时可以用一种变通的方法来实现这一功能. 这就需要借用客户端的onchange事件,调用__doPostBack方法 ...

  5. FileUpload控件「批次上传 / 多档案同时上传」的范例--以「流水号」产生「变量名称」

    原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/19/multiple_fileupload_asp_net_20130819. ...

  6. Fileupload控件导致500错误

    问题: 今天遇到一个问题,用Fileupload控件上传Excel文件,用一个button控件调用“FileUpload1.SaveAs”方法,点击按钮后出现服务器500错误.如下图: 解决方法: 在 ...

  7. FileUpload控件

    FileUpload控件 属性:FileName: 获取上传的文件名 HasFile: 是否选择(存在)上传的文件 ContentLength: 获得上窜文件的大小,单位是字节(byte) 方法:Se ...

  8. UpdatePanel1里面使用FileUpload控件

    最近做项目过程中,遇到了UpdatePanel1里面放了一个FileUpload控件,结果从后台就获取不到上传的文件了,找了好久才找到原因.原因: 加了红色部分后立马获取到了.

  9. Chart控件使用初步

    学习了Chart控件的初步使用方法,生成柱形图和饼图.    <asp:Chart ID="Chart1" runat="server" Width=&q ...

随机推荐

  1. [百度地图] MultiZMap 修改使用;

    MultiZMap修改说明 MultiZMap 是基于百度地图API 封装的一些常用功能类库:主要以prototype方式实现:并且实现了一些辅助的功能,比如添加 Marker 功能,事件管理等: 以 ...

  2. CSS 和 JS 文件合并工具

    写 CSS 和 JavaScript 的时候, 我们会遇到一个两难的局面: 要么将代码写在一个大文件, 要么将代码分成多个文件. 前者导致文件难以管理, 代码复用性差, 后者则因为需要在载入多个文件令 ...

  3. 【AngularJS】—— 13 服务Service

    在AngularJS中有很多的服务,常用的比如$http,$location等等. 本篇文章会介绍一下的内容: 1 $http这种Angular提供的服务的使用 2 如何自定义服务,并总结服务需要注意 ...

  4. Linux 中常见的命令行,持续更新

    1.添加自己的环境变量 root@adonis:~# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin r ...

  5. Codeforces #270 D. Design Tutorial: Inverse the Problem

    http://codeforces.com/contest/472/problem/D D. Design Tutorial: Inverse the Problem time limit per t ...

  6. mybatis 添加事物后 无法获取自增主键的问题

    检查代码后没发现mapper文件设置自增主键返回的问题,后来检查到,关闭事务后,执行完是可以获取返回的主键的, 我在mysql的客户端里关闭自动提交,发现使用select last_insert_id ...

  7. mysql 修改表结构

    alter table 表名 modify column 字段名 varchar(数量); 将varchar(50)改为255 alter table 表名 modify column 字段名 var ...

  8. Code First01---CodeFirst项目的搭建

    Entity Framework支持Database First.Model First和Code Only三种开发模式,各模式的开发流程大相径庭,开发体验完全不一样.三种开发模式各有优缺点,对于程序 ...

  9. BZOJ1455——罗马游戏

    1.题目大意:维护一个数据结构,可以实现合并操作,还能询问最小值 2.分析:这种问题当然是可并堆啦 随便写了一个左偏树QAQ #include <cstdio> #include < ...

  10. Android学习笔记(五)——活动的生命周期

    //此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! 为了能写出流畅连贯的程序,我们需要了解一下活动的生命周期. 一.返回栈 Android 中的活动是可以层叠的. ...