• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP.net中上传文件的操作

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 17次 | 进入软件测试论坛讨论

领测软件测试网 作者:abigfrog(千年精灵)(★JAVA★)

<一>.选择本地要上传到服务器的文件

  首先要感谢ASP.NET的强大功能,他提供的HTML控制元件,使得我们很容易的通过一个对话框来选择要上传的文件。当然你的浏览器也必须是IE 3.02 或者Netscape 3.0版本或者比这二者版本高的浏览器。通过下列语句就可以完成选择本地一个文件的工作:

<input id = " loFile " type = " file " runat = " server " >

  <二>.为了成功完成文件上传工作,在Form中的编码必须用" multipart/form-data " , 而不用From的缺省编码" application/x-www-form-urlencoded "。具体代码如下:

<form method = " post " enctype =" multipart/form-data " runat = " server ">
</form >

  <三>.获得上传的文件名称及对磁盘的若干操作

  为了获得上传的文件名称,必须要引入一个名称空间( NameSapce ) --System.IO。此名称空间里面定义了许多关于文件及磁盘操作的类,在本软件中就是通过这些类的某些方法和属性来完成软件中的一些功能。

  (1). 获得上传文件的名称

  使用Path类中的GetFileName方法,具体如下:
lstrFileName = loFile.PostedFile.FileName
  ‘’ 注: loFile.PostedFile.FileName 返回的是通过文件对话框选择的文件名,
  这之中包含了文件的目录信息
lstrFileName = Path.GetFileName ( lstrFileName )
  ‘’ 去掉目录信息,返回文件名称

  (2). 判断上传目录是否存在,不存在就建立

  建立目录要使用到Directory类中的 CreateDirectory 方法,判断目录是否存在要用到 Directory 类中的Exists方法。具体如下:

If ( not Directory.Exists( lstrFileFolder ) ) Then
 Directory.CreateDirectory ( lstrFileFolder )
End If
 ‘’ 注:lstrFileFolder是用户填入的目录名称,或者是缺省的目录名称

  <四>.上传选定文件到服务器上

  在前面工作都已经完成以后,就可以上传文件了,上传文件相对比较简单,就用下面2行语句就可以完成上传工作。

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
 ‘’显示上传文件属性

  以上就是本软件在编写时的一些比较重要的地方。





你可以在程序中判断用户上传的文件类型:
-----------------------
‘’获得文件类型
FileType.Text = loFile.PostedFile.ContentType
-----------------------
然后决定是接受还是拒绝。



延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网