Asp.net(C#)多文件上传
FileUp.aspx 页面
1
<%@ Page language="c#" Codebehind="FileUp.aspx.cs" AutoEventWireup="false" Inherits="TestCenter.FileUp" %>
2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
3
<HTML>
4
<HEAD>
5
<title>多文件上传</title>
6
<script language="JavaScript">
7
function addFile()
8
{
9
var str = '<INPUT type="file" size="50" NAME="File">'
10
document.getElementById('MyFile').insertAdjacentHTML("beforeEnd",str)
11
}
12
</script>
13
</HEAD>
14
<body>
15
<form id="form1" method="post" runat="server" enctype="multipart/form-data">
16
<div align="center">
17
<h3>多文件上传</h3>
18
<P id="MyFile"><INPUT type="file" size="50" NAME="File"></P>
19
<P>
20
<input type="button" value="增加(Add)" onclick="addFile()">
21
<input onclick="this.form.reset()" type="button" value="重置(ReSet)">
22
<asp:Button Runat="server" Text="开始上传" ID="UploadButton"></asp:Button>
23
</P>
24
<P>
25
<asp:Label id="strStatus" runat="server" Font-Names="宋体" Font-Bold="True" Font-Size="9pt"
26
Width="500px" BorderStyle="None" BorderColor="White"></asp:Label>
27
</P>
28
</div>
29
</form>
30
</body>
31
</HTML>
32

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

27

28

29

30

31

32

//****************************************************************
//////FileUp.aspx.cs
1
using System;
2
using System.Collections;
3
using System.ComponentModel;
4
using System.Data;
5
using System.Drawing;
6
using System.Web;
7
using System.Web.SessionState;
8
using System.Web.UI;
9
using System.Web.UI.WebControls;
10
using System.Web.UI.HtmlControls;
11
12
namespace TestCenter
13
{
14
/// <summary>
15
/// 实现多文件上传
16
/// </summary>
17
public class FileUp: System.Web.UI.Page
18
{
19
protected System.Web.UI.WebControls.Button UploadButton;
20
protected System.Web.UI.WebControls.Label strStatus;
21
22
private void Page_Load(object sender, System.EventArgs e)
23
{
24
if (this.IsPostBack) this.SaveImages();
25
}
26
27
private Boolean SaveImages()
28
{
29
///'遍历File表单元素
30
HttpFileCollection files = HttpContext.Current.Request.Files;
31
32
/// '状态信息
33
System.Text.StringBuilder strMsg = new System.Text.StringBuilder();
34
strMsg.Append("上传的文件分别是:<hr color=red>");
35
try
36
{
37
for(int iFile = 0; iFile < files.Count; iFile++)
38
{
39
///'检查文件扩展名字
40
HttpPostedFile postedFile = files[iFile];
41
string fileName, fileExtension;
42
fileName = System.IO.Path.GetFileName(postedFile.FileName);
43
if (fileName != "")
44
{
45
fileExtension = System.IO.Path.GetExtension(fileName);
46
strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
47
strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
48
strMsg.Append("上传文件的文件名:" + fileName + "<br>");
49
strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>");
50
///'可根据扩展名字的不同保存到不同的文件夹
51
///注意:可能要修改你的文件夹的匿名写入权限。
52
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName);
53
}
54
}
55
strStatus.Text = strMsg.ToString();
56
return true;
57
}
58
catch(System.Exception Ex)
59
{
60
strStatus.Text = Ex.Message;
61
return false;
62
}
63
}
64

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

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64
