返回首页

ASP.NET-文件上传

时间:2020-01-14 16:19来源:知行网www.zhixing123.cn 编辑:麦田守望者

 ASP.NET具有两个控件,允许用户将文件上传到Web服务器。服务器收到发布的文件数据后,应用程序可以保存,检查或忽略它。以下控件允许文件上传:

  • HtmlInputFile -HTML服务器控件

  • FileUpload-和ASP.NET Web控件

  • 这两个控件都允许文件上传,但是FileUpload控件会自动设置表单的编码,而HtmlInputFile则不允许这样做。

    在本教程中,我们使用FileUpload控件。FileUpload控件允许用户浏览并选择要上传的文件,并提供浏览按钮和用于输入文件名的文本框。

    一旦用户通过输入名称或浏览在文本框中输入文件名,就可以调用FileUpload控件的SaveAs方法将文件保存到磁盘。

    FileUpload的基本语法为:

    <asp:FileUpload ID= "Uploader" runat = "server" />

    FileUpload类派生自WebControl类,并继承其所有成员。除此之外,FileUpload类还具有以下只读属性:

    性质 描述
    文件字节
    返回要上传文件中字节的数组。
    文件内容
    返回指向要上传文件的流对象。
    文件名
    返回要上传的文件的名称。
    HasFile
    指定控件是否有要上传的文件。
    发表文件
    返回对上载文件的引用。

    发布的文件封装在HttpPostedFile类型的对象中,可以通过FileUpload类的PostedFile属性访问该文件。

    HttpPostedFile类具有以下常用属性:

    性质 描述
    内容长度
    返回上传文件的大小(以字节为单位)。
    内容类型
    返回上传文件的MIME类型。
    文件名
    返回完整的文件名。
    输入流
    返回指向上传文件的流对象。

    下面的示例演示FileUpload控件及其属性。该表单具有一个FileUpload控件以及一个保存按钮和一个标签控件,用于显示文件名,文件类型和文件长度。

    在设计视图中,表单如下所示:

    上传文件

    内容文件代码如下:

    <body>    <form id="form1" runat="server">           <div>          <h3> File Upload:</h3>          <br />          <asp:FileUpload ID="FileUpload1" runat="server" />          <br /><br />          <asp:Button ID="btnsave" runat="server" onclick="btnsave_Click"  Text="Save" style="width:85px" />          <br /><br />          <asp:Label ID="lblmessage" runat="server" />       </div>           </form> </body>

    保存按钮后面的代码如下:

    protected void btnsave_Click(object sender, EventArgs e) {    StringBuilder sb = new StringBuilder();        if (FileUpload1.HasFile)    {       try       {          sb.AppendFormat(" Uploading file: {0}", FileUpload1.FileName);                    //saving the file          FileUpload1.SaveAs("<c:\\SaveDirectory>" + FileUpload1.FileName);                 //Showing the file information          sb.AppendFormat("<br/> Save As: {0}",  FileUpload1.PostedFile.FileName);          sb.AppendFormat("<br/> File type: {0}",    FileUpload1.PostedFile.ContentType);          sb.AppendFormat("<br/> File length: {0}",  FileUpload1.PostedFile.ContentLength);          sb.AppendFormat("<br/> File name: {0}",  FileUpload1.PostedFile.FileName);                 }catch (Exception ex)       {          sb.Append("<br/> Error <br/>");          sb.AppendFormat("Unable to save file <br/> {0}", ex.Message);       }    }    else    {       lblmessage.Text = sb.ToString();    } }

    请注意以下几点:

  • StringBuilder类派生自System.IO命名空间,因此需要将其包括在内。

  • try和catch块用于捕获错误,并显示错误消息。

  • ------分隔线----------------------------
    标签(Tag):
    ------分隔线----------------------------
  • 上一篇:ADO.NET
  • 下一篇:ASP.NET-广告轮播
  • 推荐内容
  • ASP.NET-广告轮播

    AdRotator控件从列表中随机选择横幅图形,该列表在外部XML计划文件中指定。 该外部XML...

  • ASP.NET-文件上传

    ASP.NET具有两个控件,允许用户将文件上传到Web服务器。 服务器收到发布的文件数据后...

  • ADO.NET

    ADO.NET在前端控件和后端数据库之间提供了桥梁。 ADO.NET对象封装了所有数据访问操作...

  • ASP.NET-数据库访问

    ASP.NET允许访问和使用以下数据源: 数据库(例如,Access,SQL Server,Oracle,MySQ...

  • ASP.NET-验证器

    ASP.NET验证控件验证用户输入数据,以确保不会存储无用,未经身份验证或矛盾的数据。 ...

  • ASP.NET-管理状态

    超文本传输协议(HTTP)是无状态协议。 当客户端与服务器断开连接时,ASP.NET引擎将丢...

  • 猜你感兴趣
  • 教育技术学动态
  • 教育技术学论文
  • 理论研究
  • 应用研究
  • 资源收藏
  • 百家观点
  • 英文文献
  • 中国电化教育
  • 电化教育研究
  • 中国远程教育
  • 开放教育研究
  • 现代教育技术
  • 远程教育杂志
  • 现代远距离教育
  • 中国教育信息化
  • 中国信息技术教育
  • 中小学信息技术
  • Flash龙8国际平台入口
  • Photoshop龙8国际平台入口
  • 3DMAX龙8国际平台入口
  • AutoCAD龙8国际平台入口
  • CorelDRAW龙8国际平台入口
  • Matlab龙8国际平台入口
  • 其他龙8国际平台入口
  • .Net龙8国际平台入口
  • Asp龙8国际平台入口
  • Php龙8国际平台入口
  • Jsp龙8国际平台入口
  • Ajax龙8国际平台入口
  • Android教程
  • 其他龙8国际平台入口
  • Word教程
  • Excel教程
  • PowerPoint教程
  • Ubuntu教程
  • 其他教程
  • 课件下载
  • 软件下载
  • 视频教程下载
  • 其他下载
  • 教案大全
  • 试题大全
  • 课件大全
  • 其他大全
  • 人像摄影
  • 风光摄影