Asp.net中上传大的文件(Vb.net代码)

来源:互联网 发布:淘宝装修日记怎么看 编辑:程序博客网 时间:2024/05/19 09:10
upload.aspx
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm2.aspx.vb" Inherits="test.WebForm2"%>
<HTML>
    
<HEAD>
        
<title>上传文件 , http://www.chinabs.net </title>
    
</HEAD>
    
<body>
        
<center>
            
<form id="uploderform" method="post"  enctype="multipart/form-data" runat="server">
                
<table border="1" cellspacing="2" cellpadding="2">
                    
<tr>
                        
<td><h5>选择要上传的文件:</h5>
                        
</td>
                    
<tr>
                    
<tr>
                        
<td>
                            
<input type="file" id="myFile" runat="server" NAME="myFile">
                        
</td>
                    
</tr>
                    
<tr>
                        
<td>
                            
<input type="button" value="上 传"  runat="server" ID="Button1"
                                NAME
="Button1">
                        
</td>
                    
</tr>
                
</table>
            
</form>
            
<br>
            
<br>
            
<table border="1" cellspacing="2">
                
<tr>
                    
<td><b>文件资料</b></td>
                    
<td>&nbsp;</td>
                
</tr>
                
<tr>
                    
<td>文件名 :</td>
                    
<td><asp:label id="fname" text="" runat="server" /></td>
                
</tr>
                
<tr>
                    
<td>文件类型 :</td>
                    
<td><asp:label id="fenc" runat="server" /></td>
                
</tr>
                
<tr>
                    
<td>文件大小 :(in bytes)</td>
                    
<td><asp:label id="fsize" runat="server" /></td>
                
</tr>
            
</table>
            
<br>
            
<br>
            
<br>
        
</center>
    
</body>
</HTML>

upload.aspx.vb
Imports System.IO
Public Class WebForm2
    
Inherits System.Web.UI.Page

#Region 
" Web 窗体设计器生成的代码 "

    '该调用是 Web 窗体设计器所必需的。
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

    
End Sub

    
Protected WithEvents fname As System.Web.UI.WebControls.Label
    
Protected WithEvents fenc As System.Web.UI.WebControls.Label
    
Protected WithEvents fsize As System.Web.UI.WebControls.Label
    
Protected WithEvents myFile As System.Web.UI.HtmlControls.HtmlInputFile
    
Protected WithEvents Button1 As System.Web.UI.HtmlControls.HtmlInputButton

    
'注意: 以下占位符声明是 Web 窗体设计器所必需的。
    '不要删除或移动它。
    Private designerPlaceholderDeclaration As System.Object

    
Private Sub Page_Init(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Init
        
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
        '不要使用代码编辑器修改它。
        InitializeComponent()
    
End Sub


#
End Region

    
Private Sub Button1_ServerClick(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.ServerClick
        
'检查上传文件不为空
        If Not myFile.PostedFile Is Nothing Then
            
Dim nam, newext, newname As String
            
Dim i As Integer
            nam 
= myFile.PostedFile.FileName
            
'取得文件名(抱括路径)里最后一个"."的索引
            i = CInt(nam.LastIndexOf("."))
            
'取得文件扩展名
            newext = nam.Substring(i)
            
'这里自动根据日期和文件大小不同为文件命名,确保文件名不重复
            newname = Now.DayOfYear.ToString() + myFile.PostedFile.ContentLength.ToString()
            
'保存文件到你所要的目录,这里是IIS根目录下的upload目录.你可以改变.
            '注意: 我这里用Server.MapPath()取当前文件的绝对目录.在asp.net里"/"必须用"//"代替
            'Response.Write(Server.MapPath("//upload//" + newname + newext))
            myFile.PostedFile.SaveAs(Server.MapPath("upload/" + newname + newext))
            
'得到这个文件的相关属性:文件名,文件类型,文件大小
            fname.Text = myFile.PostedFile.FileName
            fenc.Text 
= myFile.PostedFile.ContentType
            fsize.Text 
= myFile.PostedFile.ContentLength.ToString()

        
End If
    
End Sub


    
Private Sub Page_Load(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Load

    
End Sub

End Class


web.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    
  
<system.web>

    
<!--  动态调试编译
          设置 compilation debug="true" 以将调试符号(.pdb 信息)
          插入到编译页中。因为这将创建执行起来
          较慢的大文件,所以应该只在调试时将该值设置为 true,而所有其他时候都设置为
          false。有关更多信息,请参考有关
          调试 ASP.NET 文件的文档。
    
-->
    
<compilation defaultLanguage="vb" debug="true" />

    
<!--  自定义错误信息
          设置 customErrors mode="On" 或 "RemoteOnly" 以启用自定义错误信息,或设置为 "Off" 以禁用自定义错误信息。 
          为每个要处理的错误添加 <error> 标记。

          "On" 始终显示自定义(友好的)信息。
          "Off" 始终显示详细的 ASP.NET 错误信息。
          "RemoteOnly" 只对不在本地 Web 服务器上运行的
           用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便 
           不向远程客户端显示应用程序的详细信息。
    
-->
    
<httpRuntime executionTimeout="1000" maxRequestLength="409600" useFullyQualifiedRedirectUrl="false"/> 
    
<customErrors mode="RemoteOnly" />

    
<!--  身份验证 
          此节设置应用程序的身份验证策略。可能的模式是 "Windows"、 
          "Forms"、 "Passport" 和 "None"

          "None" 不执行身份验证。 
          "Windows" IIS 根据应用程序的设置执行身份验证 
            (基本、简要或集成 Windows)。在 IIS 中必须禁用匿名访问。
          "Forms" 您为用户提供一个输入凭据的自定义窗体(Web 页),然后 
           在您的应用程序中验证他们的身份。用户凭据标记存储在 Cookie 中。
          "Passport" 身份验证是通过 Microsoft 的集中身份验证服务执行的,
           它为成员站点提供单独登录和核心配置文件服务。
    
-->
    
<authentication mode="Windows" /> 


    
<!--  授权 
           此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
          应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
          (未经身份验证的)用户。
    
-->
    
<authorization>
        
<allow users="*" /> <!-- 允许所有用户 -->

            
<!--  <allow     users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
                  <deny      users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
            
-->
    
</authorization>

    
<!--  应用程序级别跟踪记录
          应用程序级别跟踪为应用程序中的每一页启用跟踪日志输出。
          设置 trace enabled="true" 可以启用应用程序跟踪记录。如果 pageOutput="true",则
          在每一页的底部显示跟踪信息。否则,可以通过浏览 Web 应用程序
           根目录中的 "trace.axd" 页来查看
          应用程序跟踪日志。
    
-->
    
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />


    
<!--  会话状态设置
          默认情况下,ASP.NET 使用 Cookie 来标识哪些请求属于特定的会话。
          如果 Cookie 不可用,则可以通过将会话标识符添加到 URL 来跟踪会话。
         若要禁用 Cookie,请设置 sessionState cookieless="true"。
    
-->
    
<sessionState 
            
mode="InProc"
            stateConnectionString
="tcpip=127.0.0.1:42424"
            sqlConnectionString
="data source=127.0.0.1;Trusted_Connection=yes"
            cookieless
="false" 
            timeout
="20" 
    
/>

    
<!--  全球化
          此节设置应用程序的全球化设置。
    
-->
    
<globalization requestEncoding="utf-8" responseEncoding="utf-8" />
   
  
</system.web>

</configuration>
 
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 苹果手机地理反编码失败怎么办 城管执法过程被打怎么办 老婆看不起老公不让碰怎么办 老婆总不让碰该怎么办 机动车扣满12分怎么办 吊车吊运货物失控应该怎么办 车辆违章扣6分怎么办 最新交通法扣满12分怎么办 违章停车单丢了怎么办 违停告知单掉了怎么办 违章停车扣3分怎么办 驾驶证被扣12分怎么办 被贴条了条丢了怎么办 车停路边连续几天被贴条怎么办 车停在路边限号怎么办 违停的罚单丢了怎么办 借道左转红灯了 怎么办 道路上有锯齿线标志怎么办 被领导臭骂了一顿怎么办 酒驾撞了人逃跑怎么办处理 荣耀9home键掉了怎么办 今天开车把老太婆撞了怎么办 交通责任认定书不合理怎么办 交通事故救济金用了 没钱还怎么办 车脏了洗不干净怎么办 衣服上贴花掉了怎么办 衣服上的画掉了怎么办 衣服上沾了胶怎么办 补鞋胶弄衣服上怎么办 摩托车大灯里面掉漆怎么办 行驶中轮胎爆胎怎么办 左拐车道直行了怎么办 踏板摩托车淋雨打不着火怎么办 购房小蓝本丢了怎么办 3d下载模型没颜色怎么办 车辆被扣30分怎么办 驾驶证被扣15分怎么办 驾驶本被扣分了怎么办 违章扣分扣错了怎么办 出国自驾游怎么办手续 新加坡开车工作遇到坏人怎么办