using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
//TransmitFile实现下载
protected void Button1_Click(object sender, EventArgs e)
{
Response.ContentType = "application/x-zip-compressed";
Response.AddHeader("Content-Disposition", "attachment;filename=z.zip");
string filename = Server.MapPath("DownLoad/z.zip");
Response.TransmitFile(filename);
}
//WriteFile实现下载
protected void Button2_Click(object sender, EventArgs e)
{
string fileName ="asd.txt";//客户端保存的文件名
string filePath=Server.MapPath("DownLoad/aaa.txt");//路径
FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
}
//WriteFile分块下载
protected void Button3_Click(object sender, EventArgs e)
{
string fileName = "aaa.txt";//客户端保存的文件名
string filePath = Server.MapPath("DownLoad/aaa.txt");//路径
System.IO.FileInfo fileInfo = new System.IO.FileInfo(filePath);
if (fileInfo.Exists == true)
{
const long ChunkSize = 102400;//100K 每次读取文件,只读取100K,这样可以缓解服务器的压力
byte[] buffer = new byte[ChunkSize];
Response.Clear();
System.IO.FileStream iStream = System.IO.File.OpenRead(filePath);
long dataLengthToRead = iStream.Length;//获取下载的文件总大小
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName));
while (dataLengthToRead > 0 && Response.IsClientConnected)
{
int lengthRead = iStream.Read(buffer, 0, Convert.ToInt32(ChunkSize));//读取的大小
Response.OutputStream.Write(buffer, 0, lengthRead);
Response.Flush();
dataLengthToRead = dataLengthToRead - lengthRead;
}
Response.Close();
}
}
//流方式下载
protected void Button4_Click(object sender, EventArgs e)
{
string fileName = "aaa.txt";//客户端保存的文件名
string filePath = Server.MapPath("DownLoad/aaa.txt");//路径
//以字符流的形式下载文件
FileStream fs = new FileStream(filePath, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
Response.ContentType = "application/octet-stream";
//通知浏览器下载文件而不是打开
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
}
}
转自:
http://topic.csdn.net/u/20120822/10/D8115BB7-2F2A-4C2F-B0C1-AAB68BCB1E3E.html
分享到:
相关推荐
### ASP.NET中文件上传下载方法集合 在ASP.NET开发中,文件的上传与下载是常见需求,涉及到多种技术细节和优化策略。本文旨在提供一系列实用方法,帮助开发者有效管理文件的上传与下载过程。 #### 一、解决文件...
如压缩包中的"PDF转Word可以在线搞定.pdf"所示,这种方法无需下载任何软件,只需访问支持PDF到Word转换的在线平台即可。通常,这些网站提供简单的操作步骤: 1. 访问可靠的在线转换网站,如smallpdf、ilovepdf或 ...
"Shp矢量文件坐标转换及Shp转txt文本工具" 提供了将Shp文件中的坐标数据转换成txt文本文件的功能,并支持通过四参数法进行坐标转换。 四参数转换法是一种常用的坐标转换方法,它通过四个参数(X轴平移、Y轴平移、X...
### Global Mapper中SHP文件转KML文件方法详解 #### 一、引言 随着地理信息系统(GIS)技术的发展,不同格式的空间数据之间的转换成为了一项常见需求。其中,SHP(Shapefile)与KML(Keyhole Markup Language)是两...
#### 三、PDG转PDF的具体方法 将PDG格式文件转换为PDF格式文件的过程中,涉及到的关键步骤包括安装支持Postscript的打印机驱动程序、使用超星阅览器打开PDG文件并进行打印操作、以及通过Acrobat Distiller将Post...
十六进制是一种便捷的十六个符号(0-9,A-F)来表示二进制的方法,每个十六进制数字对应四位二进制数。而二进制则直接使用0和1来表示数据,是最基础的计算机语言。 描述中提到的步骤是使用这个小工具的简单流程: 1...
### 网页Flash-SWF文件下载方法:全方位解析与实践 在互联网发展的早期阶段,Flash-SWF文件作为网页动画、游戏和多媒体内容的主要载体,占据了一席之地。然而,随着HTML5技术的兴起,Flash逐渐淡出主流浏览器的支持...
### JAVA本地文件下载知识点 #### 一、概述 在Java编程中,经常需要处理文件的上传与下载。本文档将详细介绍如何使用Java实现基于HTTP协议的本地文件下载功能。主要聚焦于通过文件名及文件的全路径来实现本地文件...
#### 方法四:使用JBuilder JBuilder是Borland公司推出的一款集成开发环境,其强大的功能之一便是可以直接将Java项目编译并封装成Windows平台下的exe文件。这种方式适用于大型项目,提供了丰富的构建和部署选项。 ...
四、超星pdz格式转换pdf方法的应用 超星pdz格式转换pdf方法有广泛的应用前景,例如: * 数字出版:超星pdz格式转换pdf方法可以将数字出版物转换为pdf格式,以便更好地适应不同的应用场景。 * 文件共享:超星pdz...
在实际应用中,我们经常需要提供文件下载服务,例如用户可以下载PDF、图片、文档等资源。本篇将详细介绍如何使用JSP实现文件下载功能,并探讨相关知识点。 一、JSP基本概念 JSP是由Sun Microsystems公司推出的一种...
二、文件下载 1. **Servlet响应流**:通过设置响应头的`Content-Disposition`属性,可以触发浏览器下载文件。Java Servlet通过`ServletOutputStream`将文件内容写入到响应流中。 2. **Spring MVC**:在Spring MVC中...
数字化转型资料合集(16份文件) 案例一传统产业数字化转型中台产品实践 案例一公司信息化规划 案例-华润网络数字化应用介绍 案例一数据中台助力银行数字化转型 方法--18个数字化转型方法 趋势-关于数字化转型的15...
### 使用JSP下载Excel文件知识点解析 #### 一、引言 在Web开发中,经常需要将服务器...这种方法不仅适用于Excel文件,还可以扩展到其他类型的文件下载。开发者可以根据具体需求调整代码细节,以满足不同的应用场景。
四、文件信息提取 使用Attributes对象获取dcm文件的相关信息,并将其存储在变量中。例如,获取患者姓名、患者ID、图像信息等。 ```java private String result = null; private Double result2 = null; private ...
### 制作大容量IMG文件或任意调整IMG文件大小的方法 #### 一、前言 在计算机维护领域,创建和管理IMG文件对于备份系统、恢复数据以及安装软件等任务至关重要。IMG文件是一种磁盘镜像文件,它可以完整地保存源磁盘...
- **用途**: 在本例中,当用户点击具有“load”命令名的按钮时,会触发`rptFilesList_ItemCommand`方法,从而执行文件下载操作。 ##### 3.2 文件路径处理 - **路径获取**: - `string url = (e.Item.FindControl(...
在图像处理领域,色彩模式是决定像素如何表示颜色...了解这些基本概念和操作方法对于理解和处理这类图像至关重要。同时,理解色彩模式间的转换原理以及可能的色彩差异,可以帮助我们更好地进行跨平台的颜色一致性管理。
文件在线预览是现代互联网应用中的一个重要功能,它允许用户无需下载文件就能在浏览器中查看文档内容,大大提升了用户体验和工作效率。标题指出“文件在线预览仅支持word/excel/ppt/pptx 4种文件的转换和预览”,这...