简单的文件上传html+ashx

?

1

2

3

4

前台页面:<BR><formaction="upload.ashx"method="post"enctype="multipart/form-data">

<inputtype="file"name="txtUpload"id="fFile"/>

<inputtype="submit"value="上传"id="btnUpload"/>

</form>

一个file的input标签,一个表单提交按钮,将以post的形式提交到一般处理程序进行处理。

uploas.ashx:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

publicvoidProcessRequest(HttpContext context)

{

context.Response.ContentType ="text/plain";

//判断文件数量是否大于零

if(context.Request.Files.Count > 0)

{

//这里是上传单个文件,所以取到上传文件数组第一个文件对象

HttpPostedFile file = context.Request.Files[0];

//判断文件路径是否为空

if(!string.IsNullOrEmpty(file.FileName))

{

//获取文件的拓展名

stringextention = Path.GetExtension(file.FileName);

//使用当天的日期加上一个4位的随机数来组成一个随机文件名

stringname = DateTime.Now.ToString("yyyyMMdd") +newRandom().Next(1000, 10000) + extention;

//设置文件保存的路径

stringpath = context.Server.MapPath("Uploads/"+ name);

//保存文件

file.SaveAs(path);

context.Response.Write("ok");

}

}

}