<%@ Page language="vb" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html><head><title> TechRepublic File Upload Example </title>
</head>
<script language="vb" runat="server">
Sub btnSubmit_Click(o As Object, e As EventArgs)
If Not (fileUpload.PostedFile Is Nothing) Then
Dim uploadPath As String = "files"
Dim filename As String
Try
If (fileUpload.PostedFile.ContentLength > 0) Then
Dim pos As Integer
pos = fileUpload.PostedFile.FileName.LastIndexOf("\")
If (pos > 0) Then
filename = fileUpload.PostedFile.FileName.Substring(pos + 1)
Else
filename = fileUpload.PostedFile.FileName
End IfResponse.Write(Server.MapPath(uploadPath) + "\" + filename)fileUpload.PostedFile.SaveAs(Server.MapPath(uploadPath) + "\" + filename)
Else Response.Write("Empty file may not be uploaded.")
End If
Catch ex As ExceptionResponse.Write("Error: " + ex.Message.ToString())
End Try
End If
End Sub
</script>
<body><h2 align="center">TechRepublic File Upload Example</h2>
<div id="divCenter" align="center">
<form id="frmFileUploadDemo" method="post" runat="server">
<input type="file" name="fileUpload" id="fileUpload" runat="server" size="50" />
<br /><br />
<input type="submit" id="btnSubmit" value="Submit" runat="server" OnServerClick="btnSubmit_Click" />
</form></div></body></html>其代码应用HtmlInputFile和HttpPostedFile类。这些类(及其集合)的完整路径为:
ASP.NET Request对象中包含由用户提交的一切内容。Request类的Files特性可方便地对用户上传的文件进行访问。Files特性返回一个HttpFileCollection类的实例,它是HttpPostedFile对象的集合(即由用户提交的文件)。这两个类可方便地处理引入的文件。列表D中的C#实例说明了这一处理过程。(列表E包含对应的VB.NET实例。)
<%@ Page language="vb" ContentType="text/plain" debug="true" %>
<script language="vb" runat="Server">
Dim uploadFolder As String
Sub Page_Load()
If Not (IsPostBack) Then
Try
Dim uploads As HttpFileCollection
uploads = Request.Files
Dim postedFile As HttpPostedFile
Dim savePath As string savePath = Server.MapPath(uploadFolder)
Dim filename As String
Dim x As Integer
Dim pos As Integer
For x = 0 to (uploads.Count - 1)postedFile = uploads(x)
pos = postedFile.FileName.LastIndexOf("\")
If (pos > 0) Then
filename = postedFile.FileName.Substring(pos + 1)
Else
filename = postedFile.FileName
End IfpostedFile.SaveAs(savePath + "\" + filename)
Next x
Catch ex As Exception
' Handle exception
End Try
End If
End Sub
</script>此代码通过HttpFileCollection对象来恢复上传文件集,并通过一个for循环,以HttpPostedFile对象处理每个上传文件,并为每个对象调用SaveAs方法,将其保存在网络服务器中。作者: tznktg 时间: 2007-10-4 11:44
网络页面可通过表单的行为属性调用脚本。它应该指向ASP.NET页面。列表F中的HTML代码是一个样本。
列表F
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html><head><title> TechRepublic File Upload Example </title>
</head><body>
<form id="frmFileUploadDemo" name="frmFileUploadDemo" action="upload.aspx">
<input type="file" name="fileUpload" id="fileUpload" />
<br /><br />
<input type="submit" id="butSubmit" value="Submit" />
</form></body></html>安全