中国站长下载-为中国站长提供最好最全的建站资源! 首 页发布资源有事留言繁體中文
设为首页
加入收藏
联系我们
 
您当前的位置:中国站长下载 -> 文章中心 -> 网页编程 -> .NET编程 -> 文章内容  虚拟主机 域名注册 退出登录 用户管理
栏目导航
· ASP编程 · .NET编程
· PHP编程 · JSP编程
· CGI 专区
热门文章
· sndvol32 - sndvol3...
· [组图] FLASH:《大话李白》...
· 个人网站到底能赚多...
· [图文] Rundll.exe是病毒吗...
· [组图] Flash:制作MV
· 价值12万元的网站SE...
· 网站创业者,你需要...
· 一个成功的网站设计...
· [图文] FLASH:韩国导航条解...
· 中国网站的赚钱模式...
相关文章
· [图文] 用ASP.NET 2.0设计网...
· [图文] 用ASP.NET 2.0设计网...
· [图文] 用ASP.NET 2.0设计网...
· [图文] 用ASP.NET 2.0设计网...
· [图文] 用ASP.NET 2.0设计网...
· ASP.NET中WebForm组...
· ASP.NET中WebForm组...
· ASP.NET中WebForm组...
· ASP.NET中WebForm组...
· ASP.NET计数器
ASP.NET中文件上传下载方法集合(1)
作者:不详  来源:不详  发布时间:2006-8-14 8:34:11  发布人:chinazhan

 减小字体 增大字体

     文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给出几种常见的方法,本文主要内容包括:
  
    1、如何解决文件上传大小的限制
  
    2、以文件形式保存到服务器
  
    3、转换成二进制字节流保存到数据库以及下载方法
  
    4、上传Internet上的资源
  
    第一部分:
  
    首先我们来说一下如何解决ASP.net中的文件上传大小限制的问题,我们知道在默认情况下ASP.NET的文件上传大小限制为2M,一般情况下,我们可以采用更改Web.Config文件来自定义最大文件大小,如下:
  
    <httpRuntime executionTimeout="300" maxRequestLength="40960" useFullyQualifiedRedirectUrl="false"/>这样上传文件的最大值就变成了4M,但这样并不能让我们无限的扩大 MaxRequestLength的值,因为ASP.NET会将全部文件载入内存后,再加以处理。解决的方法是利用隐含的 HttpWorkerRequest,用它的GetPreloadedEntityBody和ReadEntityBody方法从IIS为ASP.NET 建立的pipe里分块读取数据。实现方法如下:
  
  IServiceProvidERProvider=(IServiceProvider)HttpContext.Current;
  HttpWorkerRequestwr=(HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
  byte[]bs=wr.GetPreloadedEntityBody();
  .
  if(!wr.IsEntireEntityBodyIsPreloaded())
  {
   intn=1024;
   byte[]bs2=newbyte[n];
   while(wr.ReadEntityBody(bs2,n)>0)
   {
    ..
   }
  }
  
    这样就可以解决了大文件的上传问题了。
  
    第二部分:
  
    下面我们来介绍如何以文件形式将客户端的一个文件上传到服务器并返回上传文件的一些基本信息。
  
    首先我们定义一个类,用来存储上传的文件的信息(返回时需要)。
  
  public class FileUpLoad
  {
   public FileUpLoad()
   {}
   /**//// <summary>
   /// 上传文件名称
   /// </summary>
   public string FileName
   {
    get
    {
     return fileName;
    }
    set
    {
     fileName = value;
    }
   }
   private string fileName;
  
   /**//// <summary>
   /// 上传文件路径
   /// </summary>
   public string FilePath
   {
    get
    {
     return filepath;
    }
    set
    {
     filepath = value;
    }
   }
   private string filepath;
  
   /**//// <summary>
   /// 文件扩展名
   /// </summary>
   public string FileExtension
   {
    get
    {
     return fileExtension;
    }
    set
    {
     fileExtension = value;
    }
   }
   private string fileExtension;
  }
  
    另外我们还可以在配置文件中限制上传文件的格式(App.Config):  做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。

 
[] [返回上一页] [打 印] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
中国站长下载
中国站长下载

本页只接受PR>=4 IT类站点连接,申请连接,谢谢您们的支持!希望我们的下载站能够真正帮到中国的站长们!
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
Copyright © 2005-2006 ChinaZhan.Net. All Rights Reserved .