四. 程序源代码:
<% @ import namespace=" system.io " %>
<html >
<body >
<script language = "vb" runat = "server" >
sub uploadfile_clicked ( sender as object, e as eventargs )
dim lstrfilename as string
dim lstrfilenamepath as string
dim lstrfilefolder as string
' 如果上传目录为空,就使用" c:\ "作为缺省上传目录
' 获得上传到服务器的目录名称
if dir.value <> "" then
lstrfilefolder = dir.value
else
lstrfilefolder = "c:\"
end if
' 获得文件名称
lstrfilename = lofile.postedfile.filename
' 注: lofile.postedfile.filename 返回的是
通过文件对话框选择的文件名,这之中包含了文件的目录信息
lstrfilename = path.getfilename ( lstrfilename )
' 去掉目录信息,返回文件名称
' 判断上传目录是否存在,不存在就建立
if ( not directory.exists ( lstrfilefolder ) ) then
directory.createdirectory ( lstrfilefolder )
end if
'上传文件到服务器
lstrfilenamepath = lstrfilefolder & lstrfilename
' 得到上传目录及文件名称
lofile.postedfile.saveas ( lstrfilenamepath )
' 获得并显示上传文件的属性
filename.text = lstrfilename
' 获得文件名称
filetype.text = lofile.postedfile.contenttype
' 获得文件类型
filelength.text = cstr ( lofile.postedfile.contentlength )
' 获得文件长度
fileuploadform.visible = false
answermsg.visible = true
' 显示上传文件属性
end sub
</script >
<asp:panel id = "fileuploadform" visible = " true " runat = "server" >
<form method = "post" enctype = "multipart/form-data" runat = "server" >
<h1 > 欢迎使用asp.net页面实现文件上传 </h1 >
请选择上传到服务器的文件名称:
<input id = "lofile" type = "file" runat = "server" > <br >
请输入上传到服务器的目录名称:
<input id = "dir" type = "text" runat = "server" > <br >
<input type = "submit" value = "开始上传" onserverclick = "
uploadfile_clicked" runat = "server" >
<br >
</form >
</asp:panel >
<asp:panel id = "answermsg" visible = " false " runat = "server" >
谢谢使用asp.net页面实现文件上传 <br >
成功上传 <asp:label id = "filename" runat = "server" /> <br >
文件大小 <asp:label id = "filelength" runat = "server" /> 字节 <br > 文件类型 <asp:label id = "filetype " runat = "server" /> <br >
</asp:panel >
</body >
</html >
五. 总结
至此我们就完成了一个比较完善的ftp文件上传软件的全部工作,由此可见asp.net的功能还是比较强大的。通过本例子,我们也看到要想灵活运用asp.net,还要深入掌握微软公司为.net framework开发的软件开发包(sdk beta 2),只有掌握了.net framework开发的软件开发包,才可能用asp.net开发出功能更强大,生命力更大的软件。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器