ASP.NET文件处理如何操作

对文件这块的处理ASP.NET可以实现对驱动器、文件、文件夹操作。
1、可以获取驱动器的信息。

2、创建复制删除移动打开文件。

3、Stream类读写。读写文本文件,读写二进制文件等。

4、利用FileUpload控件实现文件上传操作。

主要说说FileUpload控件的使用。

图片文件上传。
.aspx文件:

<%@ Page Language="C#" AutoEventWireup="true"CodeFile="FileUpload.aspx.cs"Inherits="FileUpload" %> 

<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 

<head runat="server"> 

 <title></title> 

</head> 

<body> 

 <form id="form1" runat="server"> 

 <div> 

 </div> 

 <asp:FileUploadIDasp:FileUploadID="myFileUpload" runat="server"/> 

 <asp:Label ID="lblInfo" runat="server"></asp:Label> 

 <br /> 

 <asp:ButtonIDasp:ButtonID="btnFileUpload" runat="server"onclick="btnFileUpload_Click" 

 Text="上传文件"/> 

 </form> 

</body> 

</html>

C#代码:

public partialclass FileUpload : System.Web.UI.Page 

{ 

 private string uploadDirectory;//文件保存路径字符串. 

 protected void Page_Load(objectsender, EventArgs e) 

 { 

 //默认将文件保存在站点根文件下的Uploads中 

 uploadDirectory = Path.Combine(Request.PhysicalApplicationPath,"Uploads"); 

 } 

 //上传文件. 

 protected void btnFileUpload_Click(objectsender, EventArgs e) 

 { 

 //判断是否有文件提交. 

 if (myFileUpload.PostedFile.FileName== "") 

 { 

  lblInfo.Text = "提交的文件为空!请您选择要上传的文件!"; 

 } 

 else 

 { 

  //判断文件的大小是否超过200KB. 

  if (myFileUpload.PostedFile.ContentLength> 204800) 

  { 

  lblInfo.Text = "文件不能超过200KB"; 

  } 

  else 

  { 

  //判断文件的类型. 

  string extension = Path.GetExtension(myFileUpload.PostedFile.FileName); 

  switch (extension.ToLower()) 

  { 

   case ".bmp": 

   case ".gif": 

   case ".jpg": 

   break; 

   default: 

   lblInfo .Text ="文件类型不是 *.bmp |*.gif|*.jpg"; 

   return ; 

  } 

  //将文件保存在web服务器中的我们定义的uploadDirectory变量的路径下. 

  //文件名维持不变. 

  string serverFileName= Path.GetFileName(myFileUpload.PostedFile.FileName); 

  string fullUploadPath= Path.Combine(uploadDirectory,serverFileName);
  try 

  {
   myFileUpload.PostedFile.SaveAs(fullUploadPath); //文件上传. 

   lblInfo.Text = "文件:"+ serverFileName; 

   lblInfo.Text += "成功上传到 "; 

   lblInfo.Text += fullUploadPath;
  }
  catch (Exception e2)
  {
   lblInfo.Text = e2.Message;//上传文件出错信息.
  }
  }
 }
 }
} 

显示:

如果我“上传”给你一个苹果,首先要判断“上传”的是苹果不,再判断上传的地址对不,如果不是你的“口袋”,就不给,等到“上传”成功,你再给我一张纸条---Lable(苹果上传成功已入肚)。

通过最后给大家举的例子,是不是对ASP.NET文件上传有了形象的理解了,希望通过之前一系列的文章学习对大家熟练掌握ASP.NET上传文件有所帮助哦。

(0)

相关推荐

  • asp.net FileUpload控件实现文件格式判断与文件大小限制

    在web.config中配置: 复制代码 代码如下: <appSettings>  <add key="FileType" value=".doc,.xls,.txt,.rar"/>  <add key="PicTureTye" value=".jpg|.gif|.png|.bmp|.psd|.svg|"/>  <add key="FileSizeLimit" va

  • asp.net文件上传解决方案(图片上传、单文件上传、多文件上传、检查文件类型)

    小编之前也介绍了许多ASP.NET文件上传的解决案例,今天来个asp.net文件上传大集合. 1 使用标准HTML来进行图片上传 前台代码: <body> <form id="form1" runat="server"> <div> <table> <tr> <td colspan="2" style="height: 21px" > 使用标准HTML来进

  • asp.net文件上传示例分享

    方法一:用Web控件FileUpload,上传到网站根目录. Test.aspx关键代码: 复制代码 代码如下: <form id="form1" runat="server"><asp:FileUpload ID="FileUpload1" runat="server" /><asp:Button ID="Button1" runat="server" T

  • ASP.NET实现的简单易用文件上传类

    调用方法: UploadFile uf = new UploadFile(); /*可选参数*/ uf.SetIsUseOldFileName(true);//是否使用原始文件名作为新文件的文件名(默认:true),true原始文件名,false系统生成新文件名 uf.SetFileDirectory(Server.MapPath("/file/temp3/"));//文件保存路径(默认:/upload) uf.SetFileType("*");//允许上传的文件类

  • ASP.NET MVC5实现文件上传与地址变化处理(5)

    一.上传文件和重复文件处理 文件处理的原则是:不在数据库中保存文件,只在数据库中保存文件信息(Hash值等).采取文件的MD5重命名文件在一般情况足够处理文件的重复问题,强迫症倾向则可以考虑将MD5和其他摘要算法结合. public static string Save(HttpPostedFileBase file, string path) { var root = "~/Upload/" + path + "/"; var phicyPath = Hostin

  • asp.net批量多选文件上传解决方案

    多选文件上传,已经非常多了,选择性多了可能有时候要比较下哪个更合适,结合到项目中使用更方便才是最重要的.很多的多选上传基本上都是调用的swf文件,确实用flash 或flex开发一个多选上传的功能很方便,比如flex里内置的FileReferenceList对象本身就支持文件的多选,有这个的话就方便多了,下面要说的主要也是基于flex开发的一个多选上传功能. 主要实现的功能如下: 一.选择多个文件上传并显示单个文件的上传进度 二.显示所有文件总的上传进度 三.显示所有上传文件的总大小 四.上传前

  • ASP.NET设计FTP文件上传的解决方案

    如果要用ASP来作一个FTP文件上传的页面,我想很多人立刻就会想到要用第三方开发的组件,利用第三方的组件,虽然开发起来相对比较容易.但一般来说,免费下载的第三方的组件都有某些方面的功能限制,若要购买正版的第三方组件,对于国内的用户,花销也是一个不小的数字,就是能够承担的起,烦杂的手续也使很多人望而却步.虽然微软公司在本身的视窗系统里面也提供了一个可以用来上传文件的组件--Posting Acceptor.但用过这个组件的朋友们都有一种普遍的感觉,就是实在不好用. 现在好了,自从微软公司推出了.N

  • ASP.NET对大文件上传的解决方案

    首先,我们需要下载这个名为 RanUpLoad 的组件. 下载完成之后,两个 dll 文件添加到项目的引用中区,xml 文件也要复制在项目中的 bin 文件夹下,也就是最后三个文件都要存在于 bin 文件夹中. 接着,上传控件还是用 ASP.NET 中自带的 FileUpload 控件,需要添加的就是在 FileUpload 控件旁边加入标签: <radU:RadProgressManager ID="Radprogressmanager1" Width="100%&q

  • ASP.NET让FileUpload控件支持浏览自动上传功能的解决方法

    ASP.NET的FileUpload控件默认是不支持服务端的onchange事件的,此时可以用一种变通的方法来实现这一功能. 这就需要借用客户端的onchange事件,调用__doPostBack方法来用LinkButton的OnClick事件模拟一个事件触发的过程,具体代码如下: 客户端: <asp:FileUpload ID="fuPhoto" onchange="javascript:__doPostBack('lbUploadPhoto','')" r

  • ASP.NET MVC处理文件上传的小例子

    复制代码 代码如下: <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>Files uploaded to server</h2> <div id="dialog" title="Upload files"> <% using (Html.B

  • asp.net 文件上传实例汇总

    ASP.NET依托.net framework类库,封装了大量的功能,使得上传文件非常简单,主要有以下三种基本方法. 方法一:用Web控件FileUpload,上传到网站根目录. Test.aspx关键代码: 复制代码 代码如下: <form id="form1" runat="server">     <asp:FileUpload ID="FileUpload1" runat="server" />

  • asp.net文件上传带进度条实现案例(多种风格)

    先饱饱眼福: 在之前的文章中也有类似带进度条文件传送的案例,大家可以翻阅之前的文章对知识点进行扩充. 部分代码: <%@ Page Language="C#" %> <%@ Register Assembly="MattBerseth.WebControls.AJAX" Namespace="MattBerseth.WebControls.AJAX.Progress" TagPrefix="mb" %>

  • asp 中常用的文件处理函数

    asp 中处理文件上传以及删除时常用的自定义函数 <% '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '所有自定义的VBS函数 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' function DeleteFile(Filename) '删除文件 if Filename<>"&quo

  • asp.net fileupload控件上传文件与多文件上传

    1.前台文件 Default.aspx: <%@ Page Language="C#" AutoEventWireup="true"CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.

随机推荐