ASP.NET使用FileUpload上传文件

FileUpload 您需要亲自将 enctype="multipart/form-data" 添加到页面的 <form> 元素中
 FileUpload 控件生成的源代码

< HTML  xmlns ="http://www.w3.org/1999/xHTML"   >
< head >< title >
   Upload Files
</ title ></ head >
< body >
    
< form  name ="form1"  method ="post"  action ="MyFileUpload.ASPx"  
     id
="form1"  enctype ="multipart/form-data" >
< div >
< input  type ="hidden"  name ="__VIEWSTATE"  id ="__VIEWSTATE"  value ="/wEPDwUJNDcxNTg5NDg3D2QWAgIEDxYCHgdlbmN0eXBlBRNtdWx0aXBhcnQvZm9yb
       S1kYXRhZGQUQEUFMY1+/fp1mnrkbqmVNQIzFA=="
  />
</ div >
    
< div >
        
< input  type ="file"  name ="FileUpload1"  id ="FileUpload1"   />< br  />
        
< br  />
        
< input  type ="submit"  name ="Button1"  value ="Upload File"  
         id
="Button1"   />   < br  />
        
< br  />
        
< span  id ="Label1" ></ span >
    
</ div >
    
< div >
   
< input  type ="hidden"  name ="__EVENTVALIDATION"  id ="__EVENTVALIDATION"  
    value
="/wEWAgLB+7jIAwKM54rGBv2Iz6LxVY7jWec0gZMxnuaK2ufq"   />
</ div ></ form >
</ body >
</ HTML >

确定可以上传:定位到保存上传的文件夹(用IE)——属性——安全——是否有ASPNET帐户 没则加
去 掉上传大小限制:在 web.config.comments 文件(可以在 C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/CONFIG 的 ASP.NET 2.0 配置文件夹中找到)或应用程序的 web.config 文件中进行一些改动
在 web.config.comments 文件中,查找一个名为 <executionTimeout>的节点

 

< httpRuntime 
 
executionTimeout ="110"  上传时间
 maxRequestLength
="4096"  大小
 requestLengthDiskThreshold
="80"  
 useFullyQualifiedRedirectUrl
="false"  
 minFreeThreads
="8"  
 minLocalRequestFreeThreads
="4"  
 appRequestQueueLimit
="5000"  
 enableKernelOutputCache
="true"  
 enableVersionHeader
="true"  
 requireRootedSaveASPath
="true"  
 enable
="true"  
 shutdownTimeout
="90"  
 delayNotificationTimeout
="5"  
 waitChangeNotification
="0"  
 maxWaitChangeNotification
="0"  
 enableHeaderChecking
="true"  
 sendCacheControlHeader
="true"  
 apartmentThreading
="false"   />

 

在 web.config.comments 文件中进行此改动会将该设置应用于服务器上的所有应用程序。如果要将该设置仅应用于正在使用的应用程序,则将该节点应用于应用程序的 web.config 文件,覆盖 web.config.comments 文件中的所有设置。请确保该节点位于配置文件中的 <system.web> 节点之间。
使用验证控件限制上传类型

< ASP:FileUpload  ID ="FileUpload1"  runat ="server"   />< br  />
< br  />
< ASP:Button  ID ="Button1"  runat ="server"  OnClick ="Button1_Click"  
Text
="Upload File"   />   < br  />
< br  />
< ASP:Label  ID ="Label1"  runat ="server" ></ ASP:Label >
< ASP:RegularExpressionValidator 
id ="RegularExpressionValidator1"  runat ="server"  
ErrorMessage
="Only mp3, m3u or mpeg files are allowed!"  
ValidationExpression
="^(([a-zA-Z]:)|(/{2}w+)$?)(/(w[w].*))
    +(.mp3|.MP3|.mpeg|.MPEG|.m3u|.M3U)$"
 
ControlToValidate
="FileUpload1" ></ ASP:RegularExpressionValidator >
< br  />
< ASP:RequiredFieldValidator 
id ="RequiredFieldValidator1"  runat ="server"  
ErrorMessage
="This is a required field!"  
ControlToValidate
="FileUpload1" ></ ASP:RequiredFieldValidator >
Protected Sub Button1_Click(ByVal sender As Object, _
      ByVal e As System.EventArgs)
        If FileUpload1.HasFile Then
            Dim fileExt As String
            fileExt = System.IO.Path.GetExtension(FileUpload1.FileName)
            
            If (fileExt = ".mp3") Then
                Try
                    FileUpload1.SaveAs("C:Uploads" & _
                       FileUpload1.FileName)
                    Label1.Text = "File name: " & _
                      FileUpload1.PostedFile.FileName & "" & _
                      "File Size: " & _
                      FileUpload1.PostedFile.ContentLength & " kb" & _
                      "Content type: " & _
                      FileUpload1.PostedFile.ContentType
                Catch ex As Exception
                    Label1.Text = "ERROR: " & ex.Message.ToString()
                End Try
            Else
                Label1.Text = "Only .mp3 files allowed!"
            End If
        Else
            Label1.Text = "You have not specified a file."
        End If
    End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangjiaotou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值